2559: T2-优化代码
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:21
解决:5
题目描述
33DAI 最近看到了这样一段代码:
请你想办法优化这段代码,提交一个输出和这个代码一样,但不会超时的代码。
> 显然如果你直接提交上面的代码,是能拿到本题 30 分的。
#include <bits/stdc++.h> using namespace std; long long n; long long ans; int main() { cin >> n; ans = 0; for (long long i = 1; i <= n; i++) { for (long long j = 1; j <= i; j++) { long long now = 0; for (long long k = 1; k <= i; k++) if (k % 10 == 0) now += j; ans += now; } } cout << ans << "\n"; return 0; }33DAI 一看最大的数据范围:$n\le 10^5$,这一秒时限不是妥妥的超时了吗!
请你想办法优化这段代码,提交一个输出和这个代码一样,但不会超时的代码。
> 显然如果你直接提交上面的代码,是能拿到本题 30 分的。
输入
第一行一个整数 $n$。
输出
一行一个整数,要求和题目描述中的代码输出一致。
样例输入 复制
33
样例输出 复制
13645
提示
## 数据规模与约定
对于 $100\%$ 的数据,$1\le n \le 10^5$。
- 子任务 1(30 分):$1\le n\le 100$
- 子任务 2(30 分):$1\le n\le 5000$
- 子任务 3(40 分):没有特殊限制。
对于 $100\%$ 的数据,$1\le n \le 10^5$。
- 子任务 1(30 分):$1\le n\le 100$
- 子任务 2(30 分):$1\le n\le 5000$
- 子任务 3(40 分):没有特殊限制。