2019燕山大学程序设计新生赛(二) 谍战风云
在网上搜到一个 ## 但是采用的二进制法,本人文化有限,实在研究不透,
我就尝试着用最笨的方法把他们一个一个算出来
思路: 把所有结果算出来挨个比对
欢迎大家私信交流,共同进步!
7-7 谍战风云
多年的厉兵秣马之后,恩希尔大帝发动了对北方的入侵,第一次北境战争打响。1263年7月,尼弗迦德军队越过阿梅尔山脉直取辛特拉。经过四天的艰苦战斗,帝国军最终攻陷了辛特拉都城,卡兰瑟女王自尽殉国,辛特拉灭亡
北境诸国此时才如梦方醒,派出了大量刺客和间谍潜入尼弗迦德
恩希尔大帝在宴席上遇刺,但刺客的刀刃还没有来得及捅穿恩希尔大帝的胸膛就被制服了;恩希尔大帝震怒,下令在全国范围内排查缉拿来自北境诸国的卧底,根据已有的情报,卧底们都采用一种特殊的编号来互相识别身份
如果编号 q 满足如下情况即是卧底:q = 3
a1+ 3a2+ 3a3+ 3a4… + 3an(n≥1);
其中a1,a2… an都是整数且各不相等 如 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燕山大学程序设计新生赛(二) 谍战风云相关推荐
- 2019燕山大学程序设计新生赛(二)
2019燕山大学程序设计新生赛(二) 绝地武士 参考代码 织梦岛 参考代码 谍战风云 参考代码 绝地武士 天赋异禀的绝地武士安纳金·天行者受西斯大帝达斯·西迪厄斯蛊惑,堕入原力黑暗面,随后被派去绝地圣 ...
- 21级爪哇程序设计新生赛(二)题解
21级爪哇程序设计新生赛(二) 序 A 小爪的数字集合(并查集) B 小爪的得分(博弈) C 小爪的博弈(博弈) D ljc和cyj玩五子棋(模拟) E ljc和雪球(模拟) F LJC的背包(动态规 ...
- 南邮2014程序设计新生赛暨蓝桥杯校内自主选拔赛
南邮2014程序设计新生赛暨蓝桥杯校内自主选拔赛 题目链接: http://acm.njupt.edu.cn/acmhome/contest.do?&method=contestDetail ...
- 小乐乐与二段数(2019哈理工新生赛第20题)
链接:2019哈理工新生赛题解 2019哈理工新生赛第20题 T题: 链接:https://ac.nowcoder.com/acm/contest/1877/T 来源:牛客网 题目描述 小乐乐从老师口 ...
- 2021暨南大学轩辕杯ACM程序设计新生赛题解
title : 2021暨南大学轩辕杯ACM程序设计新生赛 date : 2021-12-12 tags : ACM,练习记录 author : Linno 题目链接:https://ac.nowco ...
- 20级爪哇程序设计新生赛(一)题解
20级爪哇程序设计新生赛题解 20级爪哇程序设计新生赛1.0(正式赛) A.The Tree Of LittleZhua(思维或者线段树) Easy Version Hard Version B.小爪 ...
- [极客大挑战 2019]Havefun[ACTF2020 新生赛]Include
[极客大挑战 2019]Havefun 打开题目,看到一个确实 Havefun 的页面,于是直接 F12 查看源代码. 根据所给出的 PHP 代码在当前页面 URL 尝试传入参数,最终竟直接得出 fl ...
- 2016中北大学ACM程序设计新生赛题解
新生赛题目地址 a or an 输入字符串后判断第一个字符是不是'a','e','i','o','u',即可. #include<algorithm> #include <iostr ...
- 2019太原理工大学第二届程序设计新生赛预赛暨公开赛题解
A - Creeper? 按照题目要求,判断输入的字符串是什么,输出对应的字符串即可. 读入时需要注意一次读入一行,因为"Awww man."和"Se no!" ...
最新文章
- Python_note6 组合数据类型+jieba库+文本词频统计
- HTML5新特性---Form表单前台通过正则表达式自动验证邮箱
- python的des和3des加解密
- Caffe学习系列(6):Blob,Layer and Net以及对应配置文件的编写
- 逻辑漏洞挖掘初步总结篇
- html5绘制矩形动画,HTML5下绘制矩形教程
- MySQL学习笔记_2_MySQL创建数据表(上)
- 使用Qt设计师文件的3种方式
- 关系型数据库管理系统(RDBMS)与非关系型数据库(NoSQL)之间的区别
- 红绿3d眼镜与红蓝3d眼镜区别_佩极定制眼镜青少年3D打印定制系列全新发布
- FileZilla,读取目录列表失败(425 Can‘t open data connection.)的解决办法
- Android APK实现WIFI协议包抓取(上)-实现思路
- 可复制的领导力 重点总结读书笔记
- AutoCAD二次开发学习记录一:批量统计dwg文件数据
- 服务器的上行带宽和下行带宽是什么意思
- 全网最火! 阿里 P6 级,廖雪峰的「全栈架构师」开讲了
- TSL2591STM32固件库开发
- 使用Qt5.7.0 VS2015版本生成兼容XP的可执行程序
- codeforces 574B 暴力+复杂度分析
- arcscene如何制作三维真实场景
热门文章
- 兄弟Brother HL-3150CDN 驱动
- oppor17山寨机的特点_OPPO R17的市场竞争力如何?八家媒体评价真相了
- 大厂前端面试题总结(浏览器)
- 给定经纬度计算距离_根据经纬度计算地球上两点之间的距离js实现代码
- python写公式函数_python的数学算法函数及公式用法
- python运行程序出现红色空白图片_Python-解决使用 plt.savefig 保存图片时一片空白...
- MATLAB如何取整数
- 全国儿童青少年视力防控大会·2023北京眼睛健康产业展览会
- HCIA(计算机网络概念、网络协议模型意义)
- JDBC中的setObject方法时干什么的