题目名称 | 269. [NOI 1998]个人所得税 |
---|---|
输入输出 | personaltax.in/out |
难度等级 | ★ |
时间限制 | 500 ms (0.5 s) |
内存限制 | 64 MiB |
测试数据 | 5 |
题目来源 | BYVoid 于2009-02-17加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:56, 提交:121, 通过率:46.28% | ||||
Czb。 | 100 | 0.000 s | 0.00 MiB | C++ |
kaaala | 100 | 0.000 s | 0.00 MiB | C++ |
BYVoid | 100 | 0.000 s | 0.00 MiB | C++ |
cstdio | 100 | 0.000 s | 0.00 MiB | C++ |
NARUTO | 100 | 0.000 s | 0.00 MiB | C++ |
spadeK | 100 | 0.000 s | 0.00 MiB | C |
Wang Yen Jen | 100 | 0.000 s | 0.00 MiB | C++ |
Extreme°/极致 ° | 100 | 0.000 s | 0.00 MiB | C++ |
八级大狂风 | 100 | 0.000 s | 0.00 MiB | C++ |
ImwaOuKur | 100 | 0.000 s | 0.00 MiB | C++ |
本题关联比赛 | |||
20111102 | |||
20111102 | |||
20091112练习 | |||
EYOI与SBOI开学欢乐赛2nd |
关于 个人所得税 的近10条评论(全部评论) | ||||
---|---|---|---|---|
| ||||
数据中间多空格,坑死PASCAL。。
C语言入门
2013-11-05 18:04
9楼
| ||||
@cstdio 我用字符串读入,所以需要转换成数字。。。然后就用pow了= =。。。
raywzy
2013-11-05 14:12
8楼
| ||||
@raywzy 大神何用pow??!!
| ||||
用pow函数时会损失精度,手打幂运算。。。。。好吧比赛的时候不想写了。。其实还好= =。。
| ||||
这题对pascaler就是坑!不仅是模拟,还很考验字符串处理……注意数据中,同一行的两个元素中间可能有多个空格!
赵寒烨
2013-11-04 22:31
5楼
| ||||
对程序要求好严格……比赛时ce了TAT
钨铅
2013-11-04 22:23
4楼
| ||||
这题写的眼疼= =
| ||||
感谢Truth,感谢人民,感谢TV,让我过了
苏轼
2011-11-03 15:47
2楼
| ||||
开数组存每个员工每个月的收入(PAY),最后再计算,
遇到单个的(INCOME)就直接计算, 话说这道题的读入,就是让用scanf的, scanf具体用法可咨询:http://user.qzone.qq.com/337207188,日志 |
某国个人所得税法规定,普通公民的主要应纳税收入项目及纳税金额如下:
工资、薪金所得。按月计算征税,以每月收入额减除费用$800$元后的余额作为该月应纳税所得额,税率如下表所示:
级数 月应纳税所得额 税率(%) 1 不超过500元的 5 2 超过500元~2000元的部分 10 3 超过2000元~5000元的部分 15 4 超过5000元~20000元的部分 20 5 超过20000元~40000元的部分 25 6 超过40000元~60000元的部分 30 7 超过60000元~80000元的部分 35 8 超过80000元~100000元的部分 40 9 超过100000元的部分 45
一次性劳动报酬所得。按次计算征税,每次不超过$4000$元的,减除费用$800$元;$4000$元以上的,减除$20$%的费用,余额为应纳税所得额。征税税率如下表所示:
级数 每次应纳税所得额 税率(%) 1 不超过20000元的部分 20 2 超过20000元~50000元的部分 30 3 超过50000元的部分 40
由上面可以看出,个人工资、薪金及一次性劳动报酬所得都是按照超额累进税率来征税的。超额累进税率将应纳税所得额按数额大小分成若干等级,每一等级 规定一个税率,税率依次提高,但每一纳税人的的应纳税所得额依照所属等级同时适用几个税率分别计算,将计算结果相加后的总额作为应纳税款。
例如,某人某月工资总额为$3800$元,减去$800$元后,应纳税所得额为$3000$元。其中$1$级$500$元,$2$级$1500$元,$3$级$1000$元, 税率分别为$5$%、$10$%、$15$%,应纳税总额为$500$*$5$%+$1500$*$10$%+$1000$*$15$%=$325$(元)。现在需要你编一程序,根据该国某公司的 所有职员一年内的各项收入信息(收入项目、收入时间、收入金额)计算该公司所有职员这一年应交纳的个人所得税总额。
第一行为一个正整数$M(M<= 50000)$,表示该公司的职员总数(职员编号依次为$1,2,…,M$)。接下来的各行每行表示一年内某一个职员的一项收入信息,收入信息最多不超过$10000$行。
具体格式如下:
$工资、薪金收入信息:$PAY 职员编号 收入时间 收入金额
$一次性劳务报酬收入信息:$INCOME 职员编号 收入时间 收入金额
其中,收入时间格式为:$MM$/$DD$,$MM$表示月份($1<= MM<=12$),$DD$表示日期($1<= DD<=31$);收入金额是一个正整数(单位:元),并假设每人每项收入金额小于$100$万元,每人收入总金额不超过32位整数范围。
输入文件以字符“#”表示结束。输入文件中同一行相邻两项之间用一个或多个空格隔开。
输出文件只有一个正数$P$(保留两位小数),$P$表示该公司所有职员一年内应交纳的个人所得税总额(单位:元)。
2 PAY 1 2/23 3800 INCOME 2 4/8 4010 INCOME 2 4/18 800 PAY 1 8/14 6700 PAY 1 8/10 1200 PAY 2 12/10 20000 #
5476.60
$NOI$