问题:
6带入答案是对的,1000不对,输出结果为29370
code:
#include<bits/stdc++.h>
using namespace std;
int main(){
int k,jd=0,x=1,y=0,gz,ts,ans=0;
cin>>k;
int n[10005];
while(x<=k){
k=k-x;
y++;
x++;
}
for(int jd=0;jd<=y;jd++){
for(int ts=1;ts<=jd;ts++){
gz=jd;
ans=ans+gz;
}
}
cout<<ans;
return 0;
}
(个人认为思路没错)
提醒:
jd是发工资的阶段
gz是工资数
ts是发工资的天数