- 博客(23)
- 收藏
- 关注
原创 如何将200以内的素数储存在数组里
在写CSP因子化简想到的,我想的是将n以内的所有质数存储在数组里,就先试着写了一个两百以内的,效果其实差不多,到时候定义数组的时候,int arr[n+1]就行。循环条件改为,for(i = 0;i++)这样就可以得到n以内的质数了。
2024-03-30 21:41:33 121
原创 CSP202312_1仓库规划(C语言)
我先开始用的是,如果arr[i][k] < arr[j][k] ,t++,这样的话得分只有30,例子是对的,但是csp上面只有30分,后来就改变了思路,arr[i][k] < arr[j][k],t = 1,只有全小于的时候,循环出来的结果才会是1。如果整个数组遍历结束,还没有找到,t = 1,那么他就是物流中心,编号为0.
2024-03-30 11:41:33 208
原创 CSP202303_1田地丈量(C语言)
这一题刚开始看的时候有点束手无策,得从题目以及提示种画的图找信息,我根据题目,发现其实他们重叠面积的长是,min(a,x2),就是两个右上角左边的横坐标最小值,减去,max(0,x1),两个左下角左边的最大值,他们的宽就是两个右上角左边的纵坐标的最小值,mix(b,y2),减去,两个左下角纵坐标的最大值,max(0,y1)。于是我就改了一下条件,用if语句,就是判断不在区域类的面积,这样就是100了。我是根据自己的思路,画了个图,然后得出来的规律,可能不是很好理解。
2024-03-29 13:51:10 133 1
原创 CSP202209_1如此编码
其实这一关比较难的是数学逻辑,但是它的提示给了,按照提示,其实可以简化一下,首先我们统一一下c、b的下标,因为我觉得题目里面标的让我有点混乱,所以自己重新总结了一下。改成这样就比较简单了,用一个for循环就可以算出来了。
2024-03-28 13:02:44 150
原创 CSP201903_1小中大
有序数组的话,只需要先定义max,min,然后比较头和尾的两个数字就可以了。就是遇到如果是分数,四舍五入这里遇到了一点困难,我先开始是定义的float mid,但是发现一直编译错误,用double就是对的,然后我用mid*10%10 == 0来判断是否是整数,如果等于0的话就是整数,不等于零,就是小数,我这里的想法其实有点复杂,后来看了博主写的,判断arr[n/2-1]+arr[n/2]的和是奇数偶数的方法来做就比较容易。天知道我写了多少遍,看错题目了,以为要先排序,再算,后来发现是有序数组。
2024-03-22 22:11:07 280 2
原创 CSP201812_1小明上学
假设红绿灯被设定为红灯 r 秒,黄灯 y 秒,绿灯 g 秒,那么从 0 时刻起,[0,r) 秒内亮红灯,车辆不许通过;小明先经过第一段道路,用时 10 秒,然后等待 5 秒的红灯,再经过第二段道路,用时 11 秒,然后等待 2 秒的黄灯和 30 秒的红灯,再经过第三段、第四段道路,分别用时6、3秒,然后通过绿灯,再经过最后一段道路,用时 3 秒。k=1、2、3 时,分别表示看到了一个红灯、黄灯、绿灯,且倒计时显示牌上显示的数字是 t,此处 t 分别不会超过 r、y、g。这三个数均不超过 106。
2024-03-22 19:47:52 417 1
原创 CSP201809_1卖菜
店主们希望自己的菜价和其他商店的一致,第二天,每一家商店都会根据他自己和相邻商店的价格调整自己的价格。具体的,每家商店都会将第二天的菜价设置为自己和相邻商店第一天菜价的平均值(用去尾法取整)。注意,编号为1的商店只有一个相邻的商店2,编号为n的商店只有一个相邻的商店n-1,其他编号为i的商店有两个相邻的商店i-1和i+1。在一条街上有n个卖菜的商店,按1至n的顺序排成一排,这些商店都卖一种蔬菜。给定第一天各个商店的菜价,请计算第二天每个商店的菜价。输出一行,包含n个正整数,依次表示每个商店第二天的菜价。
2024-03-22 19:44:56 170
原创 csp201803_1跳一跳
在写这个的时候遇到一个问题,就是如果根据当前数字和下一个数字,判断是否都是2,然后改变下一个数字,在前一个基础上加2,会导致下下个数字判断的时候,下一个数字不是2,比如1 2 2 2,改变后就是1 2 4 2,这样在4位置的时候,判断当前数字和下一个数字是不是都是2的时候就会出问题,所以用两个数组储存,一个数组用来判断,不变,另外一个数组计算总和,改变数字,这样就不会出错啦(语言表达能力有限)简化后的跳一跳规则如下:玩家每次从当前方块跳到下一个方块,如果没有跳到下一个方块上则游戏结束。
2024-03-22 19:42:11 219
原创 csp201712_1最小差值
个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值。≤ 1000,每个给定的整数都是不超过10000的正整数。相差最小的两个数是5和4,它们之间的差值是1。有两个相同的数3,它们之间的差值是0.个正整数,相邻整数之间使用一个空格分隔。对于所有评测用例,2 ≤。输出一个整数,表示答案。输入第一行包含一个整数。
2024-03-22 19:35:54 115
原创 CSP201709_1打酱油
酱油10块钱一瓶,商家进行促销,每买3瓶送1瓶,或者每买5瓶送2瓶。请问小明最多可以得到多少瓶酱油。把80元分成30元和50元,分别买3瓶和5瓶,其中3瓶送1瓶,5瓶送2瓶,共得到11瓶。把40元分成30元和10元,分别买3瓶和1瓶,其中3瓶送1瓶,共得到5瓶。输出一个整数,表示小明最多可以得到多少瓶酱油。,表示小明可用于买酱油的钱数。输入的第一行包含一个整数。
2024-03-22 19:32:44 239
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人