![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
CCF_NOI
jiafengfu
C++,Python,算法,AI/ML
展开
-
CCF NOI1055. 走廊 (C++)
1055. 走廊题目描述有一个M行N列的教室座位中,有D对同学总爱凑在一起讲话。现老师要用走廊隔开他们。但只能在行之间加入K条走廊,在列中加入L条走廊,问加在哪里能使效果最佳。(一对爱讲话的同学只有左右相邻或上下相邻)。输入第一行,有5各用空格隔开的整数,分别是M,N,K,L,D(2<=N,M<=1000,0<=K&原创 2018-12-12 14:06:00 · 642 阅读 · 1 评论 -
CCF NOI1027. 数字之和 (C++)
1027. 数字之和题目描述对于任意输入的整数,计算其各个数位上的数字之和。输入输入一个正整数N。输出输出N的各个位上的数字之和。样例输入1234样例输出10数据范围限制1<=N<231C++代码#include <iostream>#include <cassert>using namespace s原创 2018-12-09 13:47:51 · 2009 阅读 · 0 评论 -
CCF NOI1028. 判断互质 (C++)
1028. 判断互质标题题目描述输入两个正整数m和n,判断m和n是否互质(即最大公约数为1),是则输出Yes,否则输出No。输入输入两个整数m和n,中间用空格隔开。输出如互质输出Yes,否则输出No。样例输入36 56样例输出No数据范围限制1<=n,m<231C++代码#include <iostream>#includ原创 2018-12-09 13:50:21 · 3764 阅读 · 0 评论 -
CCF NOI1029. 信息加密 (C++)
1029. 信息加密题目描述在传递信息的过程中,为了加密,有时需要按一定规则将文本转换成密文发送出去。有一种加密规则是这样的:对于字母字符,将其转换成其后的第3个字母。例如:A→D,a→d,X→A,x→a;对于非字母字符,保持不变。现在,请你根据输入的一行字符,输出其对应的密码。输入输入一个字符串。输出输出加密后的字符串。样例输入I(2016)love(08)China(...原创 2018-12-09 13:53:38 · 1353 阅读 · 0 评论 -
CCF NOI1030. 角谷猜想 (C++)
1030. 角谷猜想题目描述角谷猜想又称冰雹猜想。它首先流传于美国,不久传到欧洲,后来由一位叫角谷的日本人带到亚洲。因为被称为角谷猜想。通俗地讲,角谷猜想的内容是这样的:任意给定一个自然数n,当n是偶数时,将它除以2,即将它变成n/2;当n是奇数时,就将它变成3n+1,……,若干步后,总会得到1。在上述演变过程中,将每一次出现的数字排列起来,就会出现一个数字序列。我们现在要解决的问题是:...原创 2018-12-09 13:57:35 · 1702 阅读 · 0 评论 -
CCF NOI1031. 等腰三角形 (C++)
1031. 等腰三角形题目描述输入一个正整数n,输出高为n的由*组成的等腰三角形。输入输入一个正整数。输出输出高为n的由*组成的等腰三角形。样例输入3样例输出*********数据范围限制1<=n<=20C++ 代码#include <iostream>#include <cassert>usi原创 2018-12-10 10:05:58 · 2413 阅读 · 0 评论 -
CCF NOI1032. 菱形 (C++)
1032. 菱形题目描述输入一个正整数n,输出用1至(2n-1)的数字组成的菱形。输入输入正整数n。输出输出对应的菱形(见样例)。样例输入3样例输出1123123451231数据范围限制1<=n<=10...原创 2018-12-10 10:08:23 · 1438 阅读 · 0 评论 -
CCF NOI1033. 乘法口诀 (C++)
1033. 乘法口诀题目描述根据给定的n,输出乘法口诀表的前n行。输入输入正整数n。输出输出乘法口诀的前n行。样例输入3样例输出1*1=11*2=2 2*2=41*3=3 2*3=6 3*3=9数据范围限制1<=n<=9C++代码#include <iostream>#include <cassert>原创 2018-12-10 10:13:17 · 1082 阅读 · 0 评论 -
CCF NOI1034. 钞票兑换 (C++)
1034. 钞票兑换题目描述将任意给定的整百元钞票,兑换成10元、20元、50元小钞票形式。输出兑换方案总数。输入输入需要兑换的钞票总数n。输出输出方案总数。样例输入100样例输出10数据范围限制100<=n<=1000000提示方案序号10元张数20元张数50元张数100220503121424053116430750186209810101000C...原创 2018-12-10 10:16:13 · 2323 阅读 · 0 评论 -
CCF NOI1026. 表演打分 (C++)
1026. 表演打分题目描述在一次运动会方队表演中,学校安排了十名老师进行打分。对于给定的每个参赛班级的不同打分(百分制整数),按照去掉一个最高分、去掉一个最低分,再算出平均分的方法,得到该班级的最后得分。输入一行10个用空格隔开的正整数,表示十名老师的打分。输出输出该班级的最终得分,答案保留三位小数。样例输入90 89 92 90 93 95 88 90 89 88样例输出90...原创 2018-12-09 13:44:36 · 4384 阅读 · 0 评论 -
CCF NOI1025. 统计奖牌 (C++)
1025. 统计奖牌题目描述2008年北京奥运会,A国的运动员参与了n天的决赛项目(1≤n≤17)。现在要统计一下A国所获得的金、银、铜牌数目及总奖牌数。输入输入n+1行,第1行是A国参与决赛项目的天数n,其后n行,每一行是该国某一天获得的金、银、铜牌数目,以一个空格分开。输出输出仅1行,包括4个整数,为A国所获得的金、银、铜牌总数及总奖牌数,以一个空格分开。样例输入31 0 3...原创 2018-12-09 13:41:19 · 1361 阅读 · 3 评论 -
CCF NOI1077. 自然数的拆分问题 (C++)
1077. 自然数的拆分问题题目描述任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和。拆分成的数字相同但顺序不同被看做是相同的方案,如果1+3与3+1被看做是同一种方案。输入输入待拆分的自然数n。输出如样例输出若干个拆分方案(具体见样例)。样例输入7样例输出1+1+1+1+1+1+11+1+1+1+1+21+1+1+1+31+1+1+2+21+1+1+4...原创 2018-12-14 14:27:56 · 2465 阅读 · 1 评论 -
CCF NOI1078. 奇怪的电梯 (C++)
1078. 奇怪的电梯题目描述大楼的每一层楼都可以停电梯,而且第i层楼(1<=i<=N)上有一个数字Ki(0<=Ki<=N)。电梯只有四个按钮:开,关,上,下。上下的层数等于当前楼层上的那个数字。当然,如果不能满足要求,相应的按钮就会失灵。例如:3 3 1 2 5代表了Ki(K1=3,K2=3,……),从一楼开始。在一楼,按“上”可以到4楼,按“下”是不起作用的,因为没...原创 2018-12-14 14:32:44 · 1068 阅读 · 1 评论 -
CCF NOI1079. 合法 C 标识符 (C++)
1079. 合法 C 标识符题目描述给定一个不包含空白符的字符串,请判断是否是C语言合法的标识符号(注:题目保证这些字符串一定不是C语言的保留字)。C语言标识符要求:非保留字;只包含字母、数字及下划线(“_”)。不以数字开头。输入一行,包含一个字符串,字符串中不包含任何空白字符,且长度不大于20。输出一行,如果它是C语言的合法标识符,则输出yes,否则输出no。样例输入...原创 2018-12-14 14:38:49 · 2330 阅读 · 1 评论 -
CCF NOI1080. 统计字符 (C++)
1080. 统计字符题目描述Johe最近玩起了字符游戏,规则是这样的:读入四行字符串,其中的字母都是大写的,Johe想打印一个柱状图显示每个大写字母的频率。你能帮助他吗?输入输入文件共有4行:每行为一串字符,不超过100个字符。输出与样例的格式保持严格一致。样例输入THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG.THIS IS AN EX...原创 2018-12-14 14:58:19 · 1097 阅读 · 1 评论 -
CCF NOI1021. 发放奖金 (C++)
1021. 发放奖金题目描述企业发放的奖金根据利润分段计算提成。当利润I低于或等于10万元的,奖金可提10%;利润高于10万元,低于20万元,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万的,低于20万的部分仍按上述办法提成(下同)。高于20万元的部分按5%提成;40万到60万时,高于40万的部分按3%提成;60万到100万时,高于60万的部分按1.5%提成...原创 2018-12-09 13:30:11 · 1894 阅读 · 0 评论 -
CCF NOI1022. 平均年龄 (C++)
1022. 平均年龄题目描述班上有学生若干名,给出每名学生的年龄(整数),求班上所有学生的平均年龄,保留到小数点后两位。输入输入包括若干行,第一行有一个整数n(1≤n≤100),表示学生的人数。其后n行每行有一个整数,表示每个学生的年龄,取值为15到25。输出输出班级平均年龄,答案保留两位小数。样例输入21817样例输出17.50数据范围限制C++代码#inclu...原创 2018-12-09 13:33:14 · 1949 阅读 · 1 评论 -
CCF NOI1023. 最大跨度 (C++)
1023. 最大跨度题目描述给定一个长度为n的非负整数序列,请计算序列的最大跨度值(最大跨度值 = 最大值减去最小值)。输入输入一共两行,第1行为序列的个数n(1≤n≤1000),第2行为序列的n个不超过1000的非负整数,整数之间以一个空格分隔。输出输出最大跨度值。样例输入63 0 8 7 5 9样例输出9数据范围限制1≤n≤1000C++代码#include ...原创 2018-12-09 13:36:03 · 1800 阅读 · 0 评论 -
CCF NOI1024. 因子个数 (C++)
1024. 因子个数题目描述对于任意给定的一个正整数,计算其因数个数。输入样例:6输出样例:4说明:1、2、3、6都是6的因数。因此,输出4。输入输入正整数N。输出输出N的因子个数。样例输入6样例输出4数据范围限制1<=N<2^31C++代码#include <iostream>#include <cmath原创 2018-12-09 13:38:41 · 2581 阅读 · 1 评论 -
CCF NOI1035. 数根 (C++)
1035. 数根题目描述数根是这样定义的:对于一个正整数n,将它的各个数位上的数字相加得到一个新数,如果这个数是一位数,我们就称之为n的数根,否则重复处理直到它成为一个一位数。例如,n=34,3+4=7,7是一位数,所以7是34的数根。再如,n=345,3+4+5=12,1+2=3,3是一位数,所以3是345的数根。对于输入数字n,编程计算它的数根。输入输入正整数n。输出输出n的...原创 2018-12-10 10:18:47 · 2878 阅读 · 0 评论 -
CCF NOI1036. 进制转换 (C++)
1036. 进制转换题目描述模拟将任意给定的正整数n转换成对应的二进制数的过程:对于输入的任意正整数n,输出若干行“shang:* yu:*”的形式,表示其转换过程。输入输入正整数n。输出输出其转为二进制的过程(具体见样例)。样例输入13样例输出shang:6 yu:1shang:3 yu:0shang:1 yu:1shang:0 yu:1数据范围限制1<=n&...原创 2018-12-10 10:21:33 · 528 阅读 · 0 评论 -
CCF NOI1047. 寻找鞍点 (C++)
1047. 寻找鞍点题目描述给定一个5*5的矩阵,每行只有一个最大值,每列只有一个最小值,寻找这个矩阵的鞍点。鞍点指的是矩阵中的一个元素,它是所在行的最大值,并且是所在列的最小值。例如:在下面的例子中(第4行第1列的元素就是鞍点,值为8 )。11 3 5 6 912 4 7 8 1010 5 6 9 118 6 4 7 215 10 11 20 25输入输入包含一个5行5列的矩...原创 2018-12-11 11:50:22 · 890 阅读 · 0 评论 -
CCF NOI1048. 检测矩阵 (C++)
1048. 检测矩阵题目描述给定n*n由0和1组成的矩阵,如果矩阵的每一行和每一列的1的数量都是偶数,则认为符合条件。你的任务就是检测矩阵是否符合条件,或者在仅改变一个矩阵元素的情况下能否符合条件。"改变矩阵元素"的操作定义为0变成1或者1变成0。输入输入n + 1行,第1行为矩阵的大小n(0 < n < 100),以下n行为矩阵的每一行的元素,元素之间以一个空格分开。输...原创 2018-12-11 11:55:14 · 333 阅读 · 0 评论 -
CCF NOI1049. 旋转图像 (C++)
1049. 旋转图像题目描述输入一个n行m列的黑白图像,将它顺时针旋转90度后输出。输入第一行包含两个整数n和m,表示图像包含像素点的行数和列数。1 <= n <= 100,1 <= m <= 100。接下来n行,每行m个整数,表示图像的每个像素点灰度。相邻两个整数之间用单个空格隔开,每个元素均在0~255之间。输出m行,每行n个整数,为顺时针旋转90度后的图...原创 2018-12-11 12:01:42 · 692 阅读 · 0 评论 -
CCF NOI1050. 矩阵乘法 (C++)
1050. 矩阵乘法题目描述计算两个矩阵的乘法。nm阶的矩阵A乘以mk阶的矩阵B得到的矩阵C 是n*k阶的,且C[i][j] = A[i][0]*B[0][j] + A[i][1]*B[1][j] + …… +A[i][m-1]*B[m-1]j。输入第一行为n, m, k,表示A矩阵是n行m列,B矩阵是m行k列,n, m, k均小于100;然后先后输入A和B两个矩阵,A矩阵n行m列,B矩阵...原创 2018-12-11 14:03:20 · 920 阅读 · 0 评论 -
CCF NOI1051. 合影 (C++)
1051. 合影题目描述小云和朋友们去爬香山,为美丽的景色所陶醉,想合影留念。如果他们站成一排,男生全部在左(从拍照者的角度),并按照从矮到高的顺序从左到右排,女生全部在右,并按照从高到矮的顺序从左到右排,请问他们合影的效果是什么样的(所有人的身高都不同)?输入第一行是人数n(2 &amp;lt;= n &amp;lt;= 40,且至少有1个男生和1个女生)。后面紧跟n行,每行输入一个人的性别(男mal...原创 2018-12-12 12:03:48 · 687 阅读 · 0 评论 -
CCF NOI1052. Self-Numbers (C++)
1052. Self-Numbers题目描述在1949年印度数学家D. R. Daprekar发现了一类称作Self-Numbers的数。对于每一个正整数n,我们定义d(n)为n加上它每一位数字的和。例如,d(75)=75+7+5=87。给定任意正整数n作为一个起点,都能构造出一个无限递增的序列:n, d(n), d(d(n)), d(d(d(n))), . . . 例如,如果你从33开始,下...原创 2018-12-12 12:09:12 · 424 阅读 · 0 评论 -
CCF NOI1053. 相似度 (C++)
1053. 相似度题目描述给出两幅相同大小的黑白图像(用0-1矩阵)表示,求它们的相似度。说明:若两幅图像在相同位置上的像素点颜色相同,则称它们在该位置具有相同的像素点。两幅图像的相似度定义为相同像素点数占总像素点数的百分比。输入第一行包含两个整数m和n,表示图像的行数和列数,中间用单个空格隔开。1 &lt;= m &lt;= 100, 1 &lt;= n &lt;= 100。之后m行...原创 2018-12-12 13:50:11 · 490 阅读 · 0 评论 -
CCF NOI1054. 扫雷游戏 (C++)
1054. 扫雷游戏题目描述扫雷游戏是一款十分经典的单机小游戏。它的精髓在于,通过已翻开格子所提示的周围格地雷数,来判断未翻开格子里是否是地雷。现在给出n行m列的雷区中的地雷分布,要求计算出每个非地雷格的周围格地雷数。注:每个格子周围格有八个:上、下、左、右、左上、右上、左下、右下。输入第一行包含两个整数n和m,分别表示雷区的行数和列数。1 &amp;lt;= n &amp;lt;= 100, 1 &amp;...原创 2018-12-12 13:54:39 · 770 阅读 · 0 评论 -
CCF NOI1046. 打印方阵 (C++)
1046. 打印方阵题目描述打印一个n*n的数字方阵,例如n=4时:(n<=100)1 3 4 102 5 9 116 8 12 157 13 14 16输入输入n。输出输出n*n的方阵。样例输入4样例输出1 3 4 102 5 9 116 8 12 157 13 14 16数据范围限制C++代码#include ...原创 2018-12-11 11:44:43 · 1269 阅读 · 0 评论 -
CCF NOI1045. 元素之和 (C++)
1045. 元素之和题目描述输入4*4方阵,分别求两条对角线上元素之和。输入输入4*4方阵。输出输出两条对角线上元素之和(如样例所示)。样例输入0 0 2 75 3 2 19 9 7 09 1 9 5样例输出15 27数据范围限制0&lt;元素值&lt;10000C++代码#include &lt;iostream&gt;#include &lt;c原创 2018-12-11 11:36:17 · 571 阅读 · 0 评论 -
CCF NOI1037. 个位数 (C++)
1037. 个位数题目描述计算ab的个位数。输入一行两个空格隔开的正整数表示a和b。输出输出ab的个位数。样例输入2 4样例输出6数据范围限制1&amp;lt;=a,b&amp;lt;=100000C++代码#include &amp;lt;iostream&amp;gt;#include &amp;lt;cassert&amp;gt;u原创 2018-12-10 10:24:29 · 597 阅读 · 0 评论 -
CCF NOI1038. 玩扑克 (C++)
标题1038. 玩扑克题目描述又到休息时间了。两个小伙伴要玩扑克牌比大小的游戏:每人分到一种花色的扑克牌,然后每人随机出一张牌,大者胜,最后获胜次数多的人,赢一轮。不开心的事发生了,玩了一轮后,发现扑克牌竟然少了一张。到底少了几呢?你能写个程序,快速找到扑克x吗?输入输入一行,包括25个用空格分隔的数字(A表示为1,J、Q、K表示为11、12、13)。输出输出数字x,表示缺少的扑克...原创 2018-12-10 10:27:41 · 962 阅读 · 0 评论 -
CCF NOI1039. 2的n次方 (C++)
1039. 2的n次方题目描述对于任意给定的n,计算2的n次方。输入输入整数n。输出输出2的n次方的值。样例输入3样例输出8数据范围限制0<=n<=20C++代码#include <iostream>#include <cassert>using namespace std;int main(){ int n;...原创 2018-12-10 11:29:24 · 358 阅读 · 0 评论 -
CCF NOI1040. 除法游戏 (C++)
1040. 除法游戏题目描述小A和小B是一对好朋友,他们的爱好是研究数字。学过除法之后,他们就发明了一个新游戏:两人各说一个数字分别为a和b,如果a能包含b的所有质数因子,那么A就获胜。但是当数字太大的时候,两个朋友的脑算速度就有点跟不上了。现在,请你写个程序,来判断胜负吧:输入两个正整数,表示a和b(2≤a, b≤10 18)。如果a包含了b的所有质数因子,则输出“Yes”,否则输出“No...原创 2018-12-10 11:35:53 · 1233 阅读 · 0 评论 -
CCF NOI1041. 志愿者选拔 (C++)
1041. 志愿者选拔题目描述世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的150%划定,即如果计划录取m名志愿者,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。现在就请你编写程序划定面试分数线...原创 2018-12-11 10:22:03 · 1608 阅读 · 2 评论 -
CCF NOI1042. 发奖学金 (C++)
1042. 发奖学金题目描述某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排...原创 2018-12-11 10:37:29 · 750 阅读 · 1 评论 -
CCF NOI1043. 矩形分割 (C++)
1043. 矩形分割题目描述平面上有一个大矩形,其左下角坐标(0,0),右上角坐标(R,R)。大矩形内部包含一些小矩形,小矩形都平行于坐标轴且互不重叠。所有矩形的顶点都是整点。要求画一根平行于y轴的直线x=k(k是整数) ,使得这些小矩形落在直线左边的面积必须大于等于落在右边的面积,且两边面积之差最小。并且,要使得大矩形在直线左边的的面积尽可能大。注意:若直线穿过一个小矩形,将会把它切成两个部...原创 2018-12-11 10:51:52 · 1609 阅读 · 1 评论 -
CCF NOI1044. 最近元素 (C++)
1044. 最近元素题目描述在一个非降序列中,查找与给定值最接近的元素。输入第一行包含一个整数n,为非降序列长度。1 &amp;lt;= n &amp;lt;= 100000。第二行包含n个整数,为非降序列各元素。所有元素的大小均在0-1,000,000,000之间。第三行包含一个整数m,为要询问的给定值个数。1 &amp;lt;= m &amp;lt;= 10000。接下来m行,每行一个整数,为要询问最接近元素的.原创 2018-12-11 11:33:24 · 328 阅读 · 0 评论 -
CCF NOI1076. 进制转换 (C++)
1076. 进制转换题目描述用递归算法将一个十进制数X(1<=X<=109)转换成任意进制数M(2<=M<=16)。输入一行两个正整数X和M。输出输出X的M进制的表示。样例输入31 16样例输出1F数据范围限制C++代码#include <iostream>#include <vector>#include <...原创 2018-12-14 14:20:40 · 335 阅读 · 1 评论