这道题共花费了(51min) 期待大佬们 对小卓同学 代码的指正 在此提前感谢各位大佬咯
我先讲述一下小卓自己出现的一些问题吧
首先: 就是我看到10的4次方的时候,没有由头的想要使用long int去定义变量,这固然不会出错,但是我们在算法竞赛中,追求的是极简.哪怕到工作当中也应该是,以最优代码为标准随时要求自己.
小卓去查询了一下int 的10进制取值范围 int 取值范围的大小中 十进制应该为2147483647。也就是说是 21亿左右都不会爆
其次: 小卓还遇到的疑问就是 那个 之后几天 的处理 出现了卡顿
#include <iostream>
using namespace std;
int main()
{
int j = 0;//持续天数
int money = 0; //每天发的钱数
int sum = 0; // 最后的总和
int k = 0; // 题目要求给的天数
int t = 0; // 中间变量
cin >> k;
for (int i=1; i<=k;) // 控制给的天数
{
money++;
j++;
t = j;
while (t-- && i<=k)
{
sum += money;
i++;
}
}
cout << sum << endl;
return 0;
}
算法竞赛中的代码优化与问题反思
博主小卓分享了他在算法竞赛中遇到的问题及反思。他提到在处理10的4次方时过度使用longint,但实际上int类型在算法竞赛中已足够。他还讨论了代码中处理后续天数时的效率问题,指出需要优化循环结构以提高性能。博客内容侧重于编程技巧和代码简洁性的提升。
789

被折叠的 条评论
为什么被折叠?



