51nod 2381 个人所得税

牛牛已知每月的税前收入,他想知道在新个税下,税收后收入是多少?
个税计算方法是这样的:

综合所得金额 - 新起征点5000元 = 应纳税所得额

其中 综合所得金额 就是税前收入,(你可以忽略五险一金,专项扣除等我没有提到的东西)

对于 应纳税所得额
1. 不超过3000元的部分,税率3%
2. 超过3000元至12000元的部分,税率10%
3. 超过12000元至25000元的部分,税率20%
4. 超过25000元至35000元的部分,税率25%
5. 超过35000元至55000元的部分,税率30%
6. 超过55000元至80000元的部分,税率35%
7. 超过80000元的部分,税率45%

税前收入 - 个人所得税 = 税后收入

为了方便计算,保证收入是100的倍数,因此输出一定是整数。

虽然个人所得税法没有写明,但是我相信对于税前收入5000以下的人,是可以不交个人所得税的,当然也不会受到国家的补助。(税不会是负数)

存在7组数据为5000, 8000, 17000, 30000, 40000, 60000, 85000
输入保证 2400 <= 税前收入 <= 240000

 

输入

输入一行一个整数表示税前收入

输出

输出一行一个整数表示税后收入

输入样例

20000

输出样例

18410
水题


代码:
#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;
int n;
int b[8] = {5000,8000,17000,30000,40000,60000,85000,300000};
int d[7] = {3,10,20,25,30,35,45};
int main() {
    int c = 0;
    scanf("%d",&n);
    for(int i = 0;i < 7;i ++) {
        if(n > b[i]) c += (min(b[i + 1],n) - b[i]) * d[i];
    }
    printf("%d",n - c / 100);
    return 0;
}
原文地址:https://www.cnblogs.com/8023spz/p/10879923.html