Class Solution
- java.lang.Object
-
- g2301_2400.s2303_calculate_amount_paid_in_taxes.Solution
-
public class Solution extends Object
2303 - Calculate Amount Paid in Taxes.Easy
You are given a 0-indexed 2D integer array
brackets
wherebrackets[i] = [upperi, percenti]
means that theith
tax bracket has an upper bound ofupperi
and is taxed at a rate ofpercenti
. The brackets are sorted by upper bound (i.e.upperi-1 < upperi
for0 < i < brackets.length
).Tax is calculated as follows:
- The first
upper0
dollars earned are taxed at a rate ofpercent0
. - The next
upper1 - upper0
dollars earned are taxed at a rate ofpercent1
. - The next
upper2 - upper1
dollars earned are taxed at a rate ofpercent2
. - And so on.
You are given an integer
income
representing the amount of money you earned. Return the amount of money that you have to pay in taxes. Answers within10-5
of the actual answer will be accepted.Example 1:
Input: brackets = [[3,50],[7,10],[12,25]], income = 10
Output: 2.65000
Explanation:
The first 3 dollars you earn are taxed at 50%. You have to pay $3 * 50% = $1.50 dollars in taxes.
The next 7 - 3 = 4 dollars you earn are taxed at 10%. You have to pay $4 * 10% = $0.40 dollars in taxes.
The final 10 - 7 = 3 dollars you earn are taxed at 25%. You have to pay $3 * 25% = $0.75 dollars in taxes. You have to pay a total of $1.50 + $0.40 + $0.75 = $2.65 dollars in taxes.
Example 2:
Input: brackets = [[1,0],[4,25],[5,50]], income = 2
Output: 0.25000
Explanation:
The first dollar you earn is taxed at 0%. You have to pay $1 * 0% = $0 dollars in taxes.
The second dollar you earn is taxed at 25%. You have to pay $1 * 25% = $0.25 dollars in taxes.
You have to pay a total of $0 + $0.25 = $0.25 dollars in taxes.
Example 3:
Input: brackets = [[2,50]], income = 0
Output: 0.00000
Explanation: You have no income to tax, so you have to pay a total of $0 dollars in taxes.
Constraints:
1 <= brackets.length <= 100
1 <= upperi <= 1000
0 <= percenti <= 100
0 <= income <= 1000
upperi
is sorted in ascending order.- All the values of
upperi
are unique. - The upper bound of the last tax bracket is greater than or equal to
income
.
- The first
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double
calculateTax(int[][] brackets, int income)
-