题意:
求小于1000的3和5的倍数的和
解题
可以使用循环,也可以直接分析,等差数列求和(注意,3和5的公倍数只需计算一次,多计算的减去)
#include <bits/stdc++.h>
using namespace std;
const int maxn = 300005;
int main() {
int ans = 0;
ans += (995 / 5) * (5 + 995) / 2;
ans += (999 / 3) * (3 + 999) / 2;
ans -= (999 / 15) * (15 + 990) / 2; // 减去两个数的公倍数
cout << ans << endl;
return 0;
}
Answer: 233168