Skip to content

Commit 3adf96a

Browse files
committed
[BOJ] 20546 기적의 매매법 (S5)
1 parent 4c97e19 commit 3adf96a

File tree

1 file changed

+46
-0
lines changed

1 file changed

+46
-0
lines changed

심수연/7주차/260209.py

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# https://www.acmicpc.net/problem/20546
2+
3+
import sys
4+
input = sys.stdin.readline
5+
6+
cash = int(input())
7+
stock = list(map(int, input().split()))
8+
9+
JH = cash # 준현 초기 자산
10+
SM = cash # 성민 초기 자산
11+
12+
JH_total = 0 # 준현 최종 자산
13+
JH_count = 0 # 준현 주식 개수
14+
15+
for date in range(len(stock)):
16+
if JH >= stock[date]:
17+
JH_count += JH // stock[date] # 주식 개수
18+
JH %= stock[date]
19+
20+
JH_total = JH + JH_count * stock[-1]
21+
22+
SM_total = 0 # 성민 최종 자산
23+
SM_count = 0 # 성민 주식 개수
24+
25+
# 4일째부터 1, 2, 3일거 확인하는거임. -> 3
26+
# 14일째도 팔려면 팔 수 있어야 함. -> 13
27+
for date in range(3, len(stock)):
28+
# 3일 연속 하락하면, 전량 매수한다.
29+
if stock[date - 1] < stock[date - 2] < stock[date - 3] and SM >= stock[date]:
30+
past = SM # 100
31+
SM_count += SM // stock[date] # 주식 개수
32+
SM %= stock[date] # 남은 돈
33+
34+
# 가격이 3일째 상승한다면, 전량 매도한다.
35+
elif stock[date - 1] > stock[date - 2] > stock[date - 3] and SM_count > 0:
36+
SM += SM_count * stock[date]
37+
SM_count = 0
38+
39+
SM_total = SM + SM_count * stock[-1]
40+
41+
if SM_total > JH_total:
42+
print("TIMING")
43+
elif JH_total> SM_total:
44+
print("BNP")
45+
else:
46+
print("SAMESAME")

0 commit comments

Comments
 (0)