ccf161202 工資計算

2022-05-21 16:12:08 字數 1884 閱讀 8516

題目

問題描述

小明的公司每個月給小明發工資,而小明拿到的工資為交完個人所得稅之後的工資。假設他乙個月的稅前工資(扣除五險一金後、未扣稅前的工資)為s元,則他應交的個人所得稅按如下公式計算:

1) 個人所得稅起徵點為3500元,若s不超過3500,則不交稅,3500元以上的部分才計算個人所得稅,令a=s-3500元;

2) a中不超過1500元的部分,稅率3%;

3) a中超過1500元未超過4500元的部分,稅率10%;

4) a中超過4500元未超過9000元的部分,稅率20%;

5) a中超過9000元未超過35000元的部分,稅率25%;

6) a中超過35000元未超過55000元的部分,稅率30%;

7) a中超過55000元未超過80000元的部分,稅率35%;

8) a中超過80000元的部分,稅率45%;

例如,如果小明的稅前工資為10000元,則a=10000-3500=6500元,其中不超過1500元部分應繳稅1500×3%=45元,超過1500元不超過4500元部分應繳稅(4500-1500)×10%=300元,超過4500元部分應繳稅(6500-4500)×20%=400元。總共繳稅745元,稅後所得為9255元。

已知小明這個月稅後所得為t元,請問他的稅前工資s是多少元。

輸入格式

輸入的第一行包含乙個整數t,表示小明的稅後所得。所有評測資料保證小明的稅前工資為乙個整百的數。

輸出格式

輸出乙個整數s,表示小明的稅前工資。

樣例輸入

9255

樣例輸出

10000

評測用例規模與約定

對於所有評測用例,1 ≤ t ≤ 100000。

思路

1.第一種思路就是逆推,用數學的方法基本計算出來,稅後工資在什麼區間,那麼對應的稅前工資又在什麼區間。在這個區間裡面通過除去這部分的稅就可以簡單計算

2.第二種思路就是順推,迴圈乙個稅前工資範圍,經過一系列的計算它需要交的稅,使某個稅後工資=稅前工資-交稅部分

3.我還遇到了乙個大坑就是。。。原來c++裡面沒有if(a1500 && i<=4500),以至於我之前寫的結果老是出現符合條件但是進不了迴圈。python中似乎是有這種寫法的,語言多了很多東西就會繞( 這個帖子裡有大家關於python是否能這樣用的討論)。anyway,以後還是老老實實寫成if(i>a&&i題解

#includeusing

namespace

std;

intmain()

int q;//

交的稅

for(int i=0;i<=200000;i=i+100

)

else

if(i>1500 && i<=4500

)

else

if(i>4500 && i<=9000

)

else

if(i>9000 && i<=35000

)

else

if(i>35000 && i<=55000

)

else

if(i>55000 && i<=80000

)

else

if(i>80000

)

if(i+3500==q+t)

}

return0;

}

CCF 工資計算

試題編號 201612 2 試題名稱 工資計算 時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 小明的公司每個月給小明發工資,而小明拿到的工資為交完個人所得稅之後的工資。假設他乙個月的稅前工資 扣除五險一金後 未扣稅前的工資 為s元,則他應交的個人所得稅按如下公式計算 1 個人所...

ccf 工資計算

問題描述 小明的公司每個月給小明發工資,而小明拿到的工資為交完個人所得稅之後的工資。假設他乙個月的稅前工資 扣除五險一金後 未扣稅前的工資 為s元,則他應交的個人所得稅按如下公式計算 1 個人所得稅起徵點為3500元,若s不超過3500,則不交稅,3500元以上的部分才計算個人所得稅,令a s 35...

ccf 工資計算

問題描述 小明的公司每個月給小明發工資,而小明拿到的工資為交完個人所得稅之後的工資。假設他乙個月的稅前工資 扣除五險一金後 未扣稅前的工資 為s元,則他應交的個人所得稅按如下公式計算 1 個人所得稅起徵點為3500元,若s不超過3500,則不交稅,3500元以上的部分才計算個人所得稅,令a s 35...