반응형

시뮬레이션 7

백준 BAEKJOON 1592번 영식이와 친구들 [PYTHON/파이썬]

백준 BAEKJOON 1592번 영식이와 친구들 [PYTHON/파이썬] (BRONZE Ⅱ)https://www.acmicpc.net/problem/1592       영식이와 친구들이 공을 받은 횟수를 리스트로 만들어줬다.처음에 1번 자리에 앉은 사람이 공을 받으니[1, 0, 0, 0, ..., 0] 형태로 구현해 줬다.ball = [1] + [0] * (N - 1)공을 M번 받은 시점에서 게임이 종료되니만약 M이 1일 경우에는 바로 게임이 끝나게끔 if 문을 구현했다.그렇지 않다면 while 문을 활용하여 공을 받은 횟수가 홀수라면 오른쪽으로 L만큼 던지고짝수라면 왼쪽으로 L만큼 던지게끔 idx 값을 조절했다.만약 idx가 리스트의 길이인 N의 범위를 벗어날 수도 있으니 if 문으로 idx 값을 조절했..

ALGORITHM/PYTHON 2024.12.20

백준 BAEKJOON 32369번 양파 실험 [PYTHON/파이썬]

백준 BAEKJOON 32369번 양파 실험 [PYTHON/파이썬] (BRONZE Ⅳ)https://www.acmicpc.net/problem/32369      주어진 3가지 조건만 이행한다면 간단하게 구현 할 수 있는 문제다.1번 조건을 통해 칭찬 양파에 A를 더하고 비난 양파에 B를 더한다.2번 조건을 통해 비난 양파가 칭찬 양파보다 길다면 둘의 역할을 바꾼다.3번 조건을 통해 칭찬 양파와 비난 양파의 길이가 같다면 비난 양파 길이를 1만큼 자른다.      N, A, B = map(int, input().split())x, y = 1, 1while N: # 1번 조건 x += A y += B # 2번 조건 if x

ALGORITHM/PYTHON 2024.11.06

백준 BAEKJOON 2947번 나무 조각 [PYTHON/파이썬]

백준 BAEKJOON 2947번 나무 조각 [PYTHON/파이썬] (BRONZE Ⅰ)https://www.acmicpc.net/problem/2947       while 문과 for 문을 함께 사용하여서 풀었다.while 문의 조건은 나무 조각의 순서가 [1, 2, 3, 4, 5]가 아닐 때 작동하고for 문은 i 인덱스와 i+1 인덱스를 활용해야 하기 때문에 전체 길이 5에서 -1을 한 4만큼 탐색한다.그리고 i 인덱스 값이 i+1 인덱스 값보다 크다면 둘의 자리를 바꿔줬다.바꿔줬다면 현재 나무 조각의 순서를 print하는 방향으로 결괏값을 도출했다.        woodCarving = list(map(int, input().split()))while woodCarving != [1, 2, 3, 4..

ALGORITHM/PYTHON 2024.10.30

백준 BAEKJOON 31881번 K512에 바이러스 퍼뜨리기 [PYTHON/파이썬]

백준 BAEKJOON 31881번 K512에 바이러스 퍼뜨리기 [PYTHON/파이썬] (BRONZE Ⅱ)https://www.acmicpc.net/problem/31881       input 대신 sys.stdin.readline.rstrip()을 사용해야 시간 초과가 나지 않는다.바이러스 감염 여부를 체크하는 리스트를 만든 후결과값을 N과 같게 설정했다. query의 길이가 1보다 크면case와 x에 0번째 인덱스, 1번째 인덱스를 나눠 저장하였고그렇지 않다면 case 값만 저장했다. case가 1일 경우 승형이가 감염 시키는 행위이니바이러스 감염 여부를 체크한 뒤 결과값에 -1을 해주고 case가 2일 경우 근수가 치료하니바이러스 감염 여부를 체크한 뒤 결과값에 +1을 해주었다. case가 3일 경..

ALGORITHM/PYTHON 2024.06.29

백준 BAEKJOON 31712번 핑크빈 레이드 [PYTHON/파이썬]

백준 BAEKJOON 31712번 핑크빈 레이드 [PYTHON/파이썬] (BRONZE Ⅲ) https://www.acmicpc.net/problem/31712 31712번: 핑크빈 레이드 UNIST, DGIST, POSTECH의 마스코트 윤이, 달구, 포닉스는 초등학생 시절부터 메이플스토리를 즐겨 했다. 메이플스토리는 2003년 4월 29일부터 상용 서비스를 시작했으며, 2023년 4월 29일에 20주년을 맞이 www.acmicpc.net while 문을 사용하여 0초부터 1초씩 증가시키면서 문제에 접근했다. 스킬 주기의 시간에 맞춰 핑크빈에게 대미지를 주어 HP를 깎은 뒤 HP가 0 이하로 떨어지게 됐을 때의 시간을 구하였다. skillDamage = [list(map(int, input().split..

ALGORITHM/PYTHON 2024.04.13

백준 BAEKJOON 12756번 고급 여관 [PYTHON/파이썬]

백준 BAEKJOON 12756번 고급 여관 [PYTHON/파이썬] (BRONZE Ⅲ) https://www.acmicpc.net/problem/12756 12756번: 고급 여관 플레이어 A의 카드가 남아있다면 "PLAYER A"를, 플레이어 B의 카드가 남아있다면 "PLAYER B"를 출력한다. 모두 죽은 상태라면 "DRAW"를 따옴표 없이 출력한다. www.acmicpc.net A 카드(B 카드)가 B 카드(A 카드)를 몇 번 공격해야 HP를 0 이하로 만들 수 있는지 확인하면 된다. 적은 횟수로 공격해서 상대방의 카드의 생명력을 0 이하로 만든 사람이 게임에서 이기기 때문이다. def luckyStone(x, y): if y % x == 0: return y // x else: return y /..

ALGORITHM/PYTHON 2024.03.20

백준 BAEKJOON 9047번 6174 [PYTHON/파이썬]

백준 BAEKJOON 9047번 6174 [PYTHON/파이썬] (BRONZE Ⅰ) https://www.acmicpc.net/problem/9047 9047번: 6174 1949 년 인도 수학자 Kaprekar 는 Kaprekar 연산을 고안해냈다. Kaprekar 연산은 네 자리 수 중 모든 자리수가 같지 않은 수(1111, 2222 등을 제외한)의 각 자리의 숫자를 재배열해서 만들 수 있는 가장 큰 수 www.acmicpc.net for문과 while문을 함께 사용하여 풀었다. 1. 주어지는 수가 6174이면 바로 종료 2. 그렇지 않다면 단계의 수(cnt)에 1을 더해주고 주어지는 수를 재배열하여 가장 큰 수(내림차순)와 가장 작은 수(오름차순)을 변수 a, b에 저장 3. a에서 b를 뺀 값의 ..

ALGORITHM/PYTHON 2024.02.14
반응형