황찌옹
정리왕옹옹
황찌옹
GitHub Contribution
Loading data ...
  • 분류 전체보기 (158)
    • [ 알고리즘 ] (96)
      • Implementation (24)
      • Brute Force (6)
      • String (4)
      • Greedy (14)
      • DFS, BFS (13)
      • Back Tracking (4)
      • Sort & Binary Search (6)
      • DP (8)
      • Shortest Path (5)
      • Hash (3)
      • Stack, Queue (4)
      • Heap (1)
      • Tree (1)
      • Mathematics (1)
      • Ad-Hoc (1)
      • 기타 (COS Pro, etc) (1)
    • [ 언어 및 문법 ] (23)
      • Python (5)
      • C, C++ (13)
      • SQL (1)
      • 공통 개념(CS) (4)
    • [ Error ] (21)
      • Radiomics Feature Extraction (6)
      • CT Skin Segmentation (12)
      • etc (3)
    • [ Git ] (7)
    • [ 환경 설정 및 기타] (6)
    • [ 공부 ] (2)
      • AI, ML (0)
      • Computer Vision (0)
      • Image Processing (1)
      • QT (0)
      • AWS (1)
      • 의료 (0)
    • [ 포트폴리오 ] (1)
      • 🙋‍♀️자기 소개🙋‍♀️ (1)
      • 프로젝트 (0)
      • 공모전 (0)
      • 자격증 (0)
      • 대내외활동 (0)
      • 논문 (0)
      • 교육 봉사 (0)
    • [ 취준 ] (2)
      • 채용 설명회, 직무 상담 (1)
      • 취준 후기 (1)

블로그 메뉴

  • ❤️깃허브❤️

인기 글

태그

  • keras
  • configuration
  • tensorflow
  • numpy
  • pyplot
  • config
  • 모두의코드
  • OpenCV
  • Visual Studio
  • Python
  • cs
  • git
  • aws
  • cos pro
  • Cloud
  • 씹어먹는C++
  • QT
  • Anaconda
  • SQL
  • c++

최근 댓글

최근 글

전체 방문자
오늘
어제
hELLO · Designed By 정상우.
황찌옹

정리왕옹옹

[백준] 20546. 기적의 매매법
[ 알고리즘 ]/Implementation

[백준] 20546. 기적의 매매법

2022. 8. 1. 23:48

 

📌문제

 

20546번: 🐜 기적의 매매법 🐜

1월 14일 기준 준현이의 자산이 더 크다면 "BNP"를, 성민이의 자산이 더 크다면 "TIMING"을 출력한다. 둘의 자산이 같다면 "SAMESAME"을 출력한다. 모든 결과 따옴표를 제외하고 출력한다.

www.acmicpc.net

 

🎖️난이도

 

✔️풀이

seed = int(input())
juga_list = list(map(int, input().split()))

# junhyun
bnp = seed
num = 0
for juga in juga_list:
    if bnp == 0:
        break
    buy = bnp // juga
    num += buy
    bnp -= juga * buy

bnp_result = bnp + num * juga_list[-1]

# sungmin
timing = seed
num = 0
for i in range(len(juga_list)-3):
    if juga_list[i] < juga_list[i+1] < juga_list[i+2] < juga_list[i+3] and num!=0:
        sell = num
        num = 0
        timing += juga_list[i+3] * sell
    
    if juga_list[i] > juga_list[i+1] > juga_list[i+2] > juga_list[i+3]:
        buy = timing // juga_list[i+3]
        num += buy
        timing -= juga_list[i+3] * buy

timing_result = timing + num * juga_list[-1]

# print result
if bnp_result > timing_result:
    print("BNP")
elif bnp_result < timing_result:
    print("TIMING")
else:
    print("SAMESAME")

 

🧠노트

핵심 코드 :  if juga_list[i] < juga_list[i+1] < juga_list[i+2] < juga_list[i+3] and num!=0:

 

🔍참고

-

 

 

'[ 알고리즘 ] > Implementation' 카테고리의 다른 글

[백준] 12933. 오리  (0) 2022.08.02
[백준] 20918. 전구  (0) 2022.08.01
[백준] 2443. 별 찍기 - 6  (0) 2022.06.30
[백준] 2442. 별 찍기 - 5  (0) 2022.06.30
[백준] 2441. 별 찍기 - 4  (0) 2022.06.30
    황찌옹
    황찌옹
    다 정리해버리꺼야

    티스토리툴바