- 博客(7)
- 收藏
- 关注
原创 数字游戏(蓝桥杯历届真题)
已知等差数列的求和公式为S=a1*n+n*(n-1)*d/2,可得f(n)=n*(n-1)/2+1;1+2+3和4+5+6分别可以看作为首相分别为1,4末项分别为3,6的等差数列求和,则可得t=(((a+a+(n-1))*n/2+t)%k。输入的第一行包含三个整数 n,k,T,其中 n 和 k 的意义如上面所述,T 表示到目前为止栋栋一共说出的数字个数。然后是东东喊得数是如何得出的,当n=3 k=13 T=3时如下图中红色的数字为东东行出的数字。栋栋说出的数依次为1, 7, 9,和为17。
2024-03-30 15:23:27
645
原创 回文数字(蓝桥杯历届真题)
观察数字:12321,123321 都有一个共同的特征,无论从左到右读还是从右向左读,都是相同的。比如给出1221:1221%10=1 ,1221/10=122 , 1*10+122%10=12,122/10=12 ,12*10+12%10=122, 12/10=1, 122*10+1%10=1221 得到1221与原来给出得相等;在判断回文的时候,我用一个临时变量t代替正在遍历的数,不然会影响遍历顺序,导致程序出错。一个正整数 n (10< n< 100), 表示要求满足的数位和。
2024-03-25 20:15:13
534
原创 程序员的表白(蓝桥杯)
我的思路是用一个while循环其中先用两个for循环的嵌套来输出前几行,就当前几行有a列就可以了。但题目中说两个U之间要有一个空行,所以在while循环中最后要输出换行符 printf("\n\n")即可。都说程序猿不好找妹子(不过我校的学弟学妹们可以问问学长关于鞍山GQ和志愿者的故事,以及GC把妹子发展成ACMer的故事 大连交通的传奇故事哦。但这个字母U实在难倒了他,于是找我们的会长TL帮忙,可TL会长琐事缠身,你能替TL帮助这位学弟吗?输出对应大小的U,每两个U之间,要有一个空行。
2024-03-25 18:41:52
308
原创 明明的随机数(蓝桥杯)
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。我的思路是先排序在去重,这相同的数就在相邻位置,若相邻的数相同,把左边的数变为-1(题目中规定数字属于[1,1000]),将-1视作不输出的符号,且num--。2、桶排序的思想——设置一个足够大的数组b[1001],并使得b[a[i]]=a[i],其余的b[i]均赋值为0。
2024-03-19 14:11:05
242
1
原创 校门外的树(蓝桥杯)
内循环用来给铁路区域做处理,并让此区域中对应所有的数组元素加1,重头到尾开始统计整条道路树木的数量(整个数组的情况),用循环,定义t=0,一旦出现有元素等于0,我们就t=t+1。全部过一遍,我们就能知道有多少个等于0的元素了(也就是没被铁路区域盖住的树木数量),输出t,即剩余的树木。输入的第一行有两个整数L(1 <= L <= 10000)和 M(1 <= M <= 100),L代表马路的长度,M代表区域的数目,L和M之间用一个空格隔开。数轴上的每个整数点,即0,1,2,……//有n+1个元素的数组。
2024-03-13 20:25:30
385
原创 选择排序编写程序
选择排序是第一个元素和后面的元素逐一进行比较,大的数和小的数交换位置,把最小的数放在前面,以此类推,第二个元素和后面元素逐一比较。在解题过程中,我们可以通过寻找最小元素的下标,来降低交换次数。首先定义一个整形变量min,用来存储数组中最小数值的下标,默认数组第一位元素为min的下标,使用for循环和if判断更小的元素,找到则把该元素的下标赋予min,直到找到最小的元素下标,最后将第一个元素与min记录的最小元素互换位置。用选择法对10个整数从小到大排序。输入10个无序的数字。
2024-03-08 17:37:35
192
1
原创 蓝桥杯备考
首先我们看到是让求阶乘的和,这样解题思路会有两步先求阶乘,再进行求和。其次从题目中可得“n不超过20”,因为这是阶乘求和,一般的int 类型可能就不够,因此我们利用long long int 类型来定义Sn,同时long long的格式指定符为%lld。求阶乘和求和的过程我用了一个for循环 for(int i=1;},最后用printf函数输出和值就可以了。之值,其中n是一个数字(n不超过20)。
2024-03-05 10:43:47
195
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅