- 博客(13)
- 收藏
- 关注
原创 洛谷p1996 约瑟夫问题(c++)
在这段代码中,核心思想是通过一个布尔数组来跟踪每个人是否已经出圈。程序使用一个无限循环来模拟整个报数过程,每当一个人的报数达到指定的上限时,他就会被标记为出圈,并且程序会输出他的编号。这个过程一直持续到所有人都被标记为出圈。这种方式高效地解决了约瑟夫问题,同时代码也具有一定的灵活性,可以应对不同的n和m值。
2023-12-29 20:29:53
538
1
原创 洛谷P2240 部分背包问题 (c++)(贪心)
根据每堆金币的单位价格(价值/重量)排序,并通过贪心算法选择单位价格最高的金币直至背包满或者将一堆金币装入背包。然后按照选择的金币数量计算总的价值。代码先读取输入并计算单位价格,然后按单位价格排序金币堆,接着使用贪心算法选择金币直至背包无法再装入或者选择一堆金币装满为止。最后输出阿里巴巴最多可以拿走的金币总价值。
2023-12-28 08:54:43
561
1
原创 洛谷P8772 求和
首先我定义了两个变量s和x,分别代表之前所有数的和和之前所有数的和与新输入数的乘积。然后通过循环依次输入n个整数,并在循环中更新x和s的值。最后输出得到的结果x。
2023-12-27 18:56:47
563
2
原创 洛谷P1401题解 禁止在 int 乘 int 时不开 long long (c++)
这个题需要输入四个数字,那么我们可以顺次输入,用a,b,c,d分别表示xl,xu,yl,yu,然后我们可以判断long long int的情况。首先我们要分类,如果a,c为负值,b,d为正值,那么a乘c,b乘d可能为。,如果a,b,c,d只有一个负值或正值,那么不妨假设a为负值,a乘d为最小值,b乘d为最大值。综上,最大值只能出现在。,b乘c,a乘d可能为。之间,最小值只能出现在。
2023-12-26 21:00:27
1330
2
原创 c语言 洛谷P1567 统计天数
这个题N的取值范围较大,很显然,加入数组非常容易超时,那么我们就要避免加入数组 这样我们就可以通过输入的变量和它前一个变量来进行比较 首先我们输入N,然后我们就可以进行循环,在循环的过程中,我们将上一次循环的a赋值给a1,这样我们就可以通过a和a1的比较,并使用b来计数,并保存在sum中,当所计数的b大于sum时,我们就可以更新sum的值,但是此时b和sum忽略了这个数本身,所以我们将sum+1就是所输出来的答案,代码如下↓ #include<stdio.h> int main()
2023-10-27 22:08:31
494
2
空空如也
请问我这个AC了,但是第二个for我实在想不明白了,thank you
2023-11-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人