본문으로 바로가기

C135:商品の割引

category TIL/Algorithm 2024. 4. 7. 12:54

あるスーパーでは同じ商品が M 個同時購入された際に D % の割引を行っています。あなたは同じ P 円の商品を N 個購入しようとしています。このときの合計金額を、小数点以下の端数を切り捨てて整数で出力してください。

入力例 1 の場合、100 円の商品を 10 個買おうとしています。4 個同時購入すると 60 % 割引となるので、10 個のうち 8 個の商品が 60 % 割引となり、残った 2 つは割引が行われません。このとき、合計金額は 520 円になります。

評価ポイント10回のテストケースで、正答率、実行速度、メモリ消費量をはかり得点が決まります。
より早い解答時間で提出したほうが得点が高くなります。
  1. 複数のテストケースで正しい出力がされるか評価(+50点)
  2. 解答までの速さ評価(+50点)
入力される値

入力は以下のフォーマットで与えられます。

M D
P N
  • ・1 行目に割引の条件となる同時購入の数 M と割引率 D が整数で与えられます。
  • ・2 行目に購入する商品の価格 P と個数 N が整数で与えられます。
  • ・入力は 2 行となり、入力値最終行の末尾に改行が 1 つ入ります。

それぞれの値は文字列で標準入力から渡されます。標準入力からの値取得方法はこちらをご確認ください
期待する出力合計金額を小数点以下を切り捨てた整数で出力してください。
出力最終行の末尾に改行を入れ、余計な文字、空行を含んではいけません。
条件

すべてのテストケースにおいて、以下の条件をみたします。

  • ・2 ≦ M ≦ 100
  • ・0 < D < 100
  • ・1 ≦ P ≦ 1,000
  • ・1 ≦ N ≦ 1,000
入力例1
4 60
100 10
出力例1
520
入力例2
4 10
8 5
出力例2
36

# 4 60
# 100 10
N,W=map(int,input().split())
# print(N,W)
P,S=map(int,input().split())
# print(P,S)
price=0
#몪
# print(S//N)
price+=(S//N)*N*(P*(1-(W/100)))
# print(S%N)
price+=(S%N)*(P)
print(int(price))
# print(4%4)

'TIL > Algorithm' 카테고리의 다른 글

C148:戦闘シミュレーション  (0) 2024.04.20
C034:先生の宿題  (0) 2024.04.09
C122:【2022年Xmas問題】プレゼントのセール  (0) 2024.04.07
C030:白にするか黒にするか  (0) 2024.04.05
0 합성수 찾기  (0) 2022.12.23