在网上搜到一个 ## 但是采用的二进制法,本人文化有限,实在研究不透,
我就尝试着用最笨的方法把他们一个一个算出来

思路: 把所有结果算出来挨个比对

欢迎大家私信交流,共同进步!

7-7 谍战风云

多年的厉兵秣马之后,恩希尔大帝发动了对北方的入侵,第一次北境战争打响。1263年7月,尼弗迦德军队越过阿梅尔山脉直取辛特拉。经过四天的艰苦战斗,帝国军最终攻陷了辛特拉都城,卡兰瑟女王自尽殉国,辛特拉灭亡
北境诸国此时才如梦方醒,派出了大量刺客和间谍潜入尼弗迦德
恩希尔大帝在宴席上遇刺,但刺客的刀刃还没有来得及捅穿恩希尔大帝的胸膛就被制服了;恩希尔大帝震怒,下令在全国范围内排查缉拿来自北境诸国的卧底,根据已有的情报,卧底们都采用一种特殊的编号来互相识别身份
如果编号 q 满足如下情况即是卧底:

q = 3

​a​1​​+ 3​a​2​​+ 3​a​3+ 3​a4​​… + 3​a​n(n≥1);

其中a​1​​,a​2​​… a​n​​都是整数且各不相等 如 4 = 3的​1​次方​+ 3的​0次方

​​

输入格式:

输入的第一行是一个正整数 n (n ⩽ 500),代表有 n 组测试数据 接下来 n 行,每行包含一个正整数 q(q ⩽ 10000)

输出格式:

对于每组测试数据输出一行,如果 q 满足卧底的条件,那么直接输出 q;否则输出大于该正整数q且满足卧底条件的最小正整数

输入样例:

6 1 2 6 13 14 3620

输出样例:

1 3 9 13 27 6561

代码

#include<iostream>
#include<algorithm>
using namespace std;
int sum[10][252];
int index[10];
int main(){for (int i = 0; i < 10; i++){index[i] = 0;}sum[0][0] = 1; index[0] = 0;for (int i = 1; i < 10; i++){sum[0][i] =sum[0][index[0]++]*3;}index[0]++;for (int i = 0; i < 9; i++)for (int j = i + 1; j < 10; j++)sum[1][index[1]++] = sum[0][i] + sum[0][j];for (int i = 0; i < 8; i++)for (int j = i + 1; j < 9; j++)for (int k = j + 1; k < 10;k++)sum[2][index[2]++] = sum[0][i] + sum[0][j] + sum[0][k];for (int i = 0; i < 7; i++)for (int j = i + 1; j < 8; j++)for (int k = j + 1; k < 9; k++)for (int a = k + 1; a < 10;a++)sum[3][index[3]++] = sum[0][i] + sum[0][j] + sum[0][k] + sum[0][a];for (int i = 0; i < 6; i++)for (int j = i + 1; j < 7; j++)for (int k = j + 1; k < 8; k++)for (int a = k + 1; a < 9; a++)for (int b = a + 1; b < 10;b++)sum[4][index[4]++] = sum[0][i] + sum[0][j] + sum[0][k] + sum[0][a] + sum[0][b];int Num = 0;for (int i = 0; i < 10; i++){Num += sum[0][i];}for (int i = index[3]-1; i >=0; i--){sum[5][index[5]++] = Num - sum[3][i];}for (int i = index[2]-1; i >=0; i--){sum[6][index[6]++] = Num - sum[2][i];}for (int i = index[1]-1; i >= 0; i--){sum[7][index[7]++] = Num - sum[1][i];}for (int i = index[0]-1; i >= 0; i--){sum[8][index[8]++] = Num - sum[0][i];}sum[9][0] = Num; index[9] = 1;int sumi = 0;for (int i = 0; i < 10; i++)sumi += index[i];int *sum1=new int[sumi];int ind = 0;for (int i = 0; i < 10; i++)for (int j = 0; j < index[i]; j++)sum1[ind++] = sum[i][j];for (int i = 0; i < 10; i++){sort(sum1, sum1 + sumi);}//for (int i = 0; i < sumi; i++)cout << sum1[i] << endl;int n; cin >> n;int tem;for (int i = 0; i < n; i++){cin >> tem;for (int j = 0; j < ind; j++){if (tem == sum1[j]){cout << tem << endl; break;}else if (tem < sum1[j]){cout << sum1[j] << endl; break;}}}system("pause");return 0;
}

2019燕山大学程序设计新生赛(二) 谍战风云相关推荐

  1. 2019燕山大学程序设计新生赛(二)

    2019燕山大学程序设计新生赛(二) 绝地武士 参考代码 织梦岛 参考代码 谍战风云 参考代码 绝地武士 天赋异禀的绝地武士安纳金·天行者受西斯大帝达斯·西迪厄斯蛊惑,堕入原力黑暗面,随后被派去绝地圣 ...

  2. 21级爪哇程序设计新生赛(二)题解

    21级爪哇程序设计新生赛(二) 序 A 小爪的数字集合(并查集) B 小爪的得分(博弈) C 小爪的博弈(博弈) D ljc和cyj玩五子棋(模拟) E ljc和雪球(模拟) F LJC的背包(动态规 ...

  3. 南邮2014程序设计新生赛暨蓝桥杯校内自主选拔赛

    南邮2014程序设计新生赛暨蓝桥杯校内自主选拔赛 题目链接:  http://acm.njupt.edu.cn/acmhome/contest.do?&method=contestDetail ...

  4. 小乐乐与二段数(2019哈理工新生赛第20题)

    链接:2019哈理工新生赛题解 2019哈理工新生赛第20题 T题: 链接:https://ac.nowcoder.com/acm/contest/1877/T 来源:牛客网 题目描述 小乐乐从老师口 ...

  5. 2021暨南大学轩辕杯ACM程序设计新生赛题解

    title : 2021暨南大学轩辕杯ACM程序设计新生赛 date : 2021-12-12 tags : ACM,练习记录 author : Linno 题目链接:https://ac.nowco ...

  6. 20级爪哇程序设计新生赛(一)题解

    20级爪哇程序设计新生赛题解 20级爪哇程序设计新生赛1.0(正式赛) A.The Tree Of LittleZhua(思维或者线段树) Easy Version Hard Version B.小爪 ...

  7. [极客大挑战 2019]Havefun[ACTF2020 新生赛]Include

    [极客大挑战 2019]Havefun 打开题目,看到一个确实 Havefun 的页面,于是直接 F12 查看源代码. 根据所给出的 PHP 代码在当前页面 URL 尝试传入参数,最终竟直接得出 fl ...

  8. 2016中北大学ACM程序设计新生赛题解

    新生赛题目地址 a or an 输入字符串后判断第一个字符是不是'a','e','i','o','u',即可. #include<algorithm> #include <iostr ...

  9. 2019太原理工大学第二届程序设计新生赛预赛暨公开赛题解

    A - Creeper? 按照题目要求,判断输入的字符串是什么,输出对应的字符串即可. 读入时需要注意一次读入一行,因为"Awww man."和"Se no!" ...

最新文章

  1. Python_note6 组合数据类型+jieba库+文本词频统计
  2. HTML5新特性---Form表单前台通过正则表达式自动验证邮箱
  3. python的des和3des加解密
  4. Caffe学习系列(6):Blob,Layer and Net以及对应配置文件的编写
  5. 逻辑漏洞挖掘初步总结篇
  6. html5绘制矩形动画,HTML5下绘制矩形教程
  7. MySQL学习笔记_2_MySQL创建数据表(上)
  8. 使用Qt设计师文件的3种方式
  9. 关系型数据库管理系统(RDBMS)与非关系型数据库(NoSQL)之间的区别
  10. 红绿3d眼镜与红蓝3d眼镜区别_佩极定制眼镜青少年3D打印定制系列全新发布
  11. FileZilla,读取目录列表失败(425 Can‘t open data connection.)的解决办法
  12. Android APK实现WIFI协议包抓取(上)-实现思路
  13. 可复制的领导力 重点总结读书笔记
  14. AutoCAD二次开发学习记录一:批量统计dwg文件数据
  15. 服务器的上行带宽和下行带宽是什么意思
  16. 全网最火! 阿里 P6 级,廖雪峰的「全栈架构师」开讲了
  17. TSL2591STM32固件库开发
  18. 使用Qt5.7.0 VS2015版本生成兼容XP的可执行程序
  19. codeforces 574B 暴力+复杂度分析
  20. arcscene如何制作三维真实场景

热门文章

  1. 兄弟Brother HL-3150CDN 驱动
  2. oppor17山寨机的特点_OPPO R17的市场竞争力如何?八家媒体评价真相了
  3. 大厂前端面试题总结(浏览器)
  4. 给定经纬度计算距离_根据经纬度计算地球上两点之间的距离js实现代码
  5. python写公式函数_python的数学算法函数及公式用法
  6. python运行程序出现红色空白图片_Python-解决使用 plt.savefig 保存图片时一片空白...
  7. MATLAB如何取整数
  8. 全国儿童青少年视力防控大会·2023北京眼睛健康产业展览会
  9. HCIA(计算机网络概念、网络协议模型意义)
  10. JDBC中的setObject方法时干什么的