201612-2 工资计算
程序员文章站
2022-04-25 20:02:35
...
#include <iostream>
using namespace std;
int main(){
int s;
cin>>s;
if(s<=3500){
cout<<s<<endl;
return 0;
}
int i=3600;
while(i){
int ans=0;
if(i >= 3600 && i <= 5000){
ans += (i-3500)*0.03;
}
if(i >= 5100 && i <= 8000){
ans += (i-5000)*0.1+45;
}
if(i >= 8100 && i <= 12500){
ans += (i-8000)*0.2+45+300;
}
if(i >=12600 && i <= 38500){
ans += (i-12500)*0.25+45+300+900;
}
if(i >= 38600 && i <= 58500){
ans += (i-38500)*0.3+45+300+900+6500;
}
if(i >= 58600 && i <= 83500){
ans += (i-58500)*0.35+45+300+900+6500+6000;
}
if(i >= 83600){
ans += (i-83500)*0.45+45+300+900+6500+6000+8750;
}
if(i-ans==s){
cout<<i<<endl;
break;
}
i=i+100;
}
return 0;
}
注意::题目中说到税前工资都为整数百数,可以暴力直接枚举,直到与所给的数值匹配为止;
刚开始没有看到这一要求,逻辑捋不顺==。