求代码优化,新手,最后三个点TLE

P1147 连续自然数和

或者还有更好的方法吗。。我用的是等差数列公式
by Matrixchung @ 2017-10-31 13:36:22


我也是等差数列,用数字个数单循环效率更高 ```cpp #include <iostream> #include <vector> using namespace std; struct Num { int st,ed; }; vector<Num> v; int main() { int m, a, b, tmp, i=2; cin >> m; while(i<m) { tmp=2*m-i*i+i; if(tmp%(2*i)==0) { a=tmp/(2*i); b=i+a-1; if(a<1)break; v.push_back({a,b}); } i++; } for(i=v.size()-1; i>=0; i--) cout << v[i].st <<" " << v[i].ed << endl; return 0; } ```
by kissinger @ 2017-10-31 20:49:00


好的,谢谢了
by Matrixchung @ 2017-10-31 22:14:58


~~氧气优化是个好东西~~
by Fireflying @ 2018-11-25 19:58:46


|