본문 바로가기

python680

[구현/수학] 백준 27433 팩토리얼 2 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 27433번: 팩토리얼 2 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 2. 문제 풀이 n 팩토리얼을 구하는 문제입니다. 3. 코드 N = int(input()) res = 1 for i in range(1, N+1): res *= i print(res) 팩토리얼은 주로 반복문 예제로 많이 인용됩니다. 팩토리얼 개념 자체가 1씩 올라가며 곱하는 방식이라, 반복문을 이해하는 데에 적합하긴 하죠. 2023. 7. 18.
[자료구조/큐] 백준 10845 큐 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 2. 문제 풀이 push X: 정수 X를 큐에 넣는 연산 pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력 (비어있으면 -1 출력) size: 큐에 들어있는 정수의 개수를 출력 empty: 큐가 비어있으면 1, 아니면 0을 출력 front: 큐의 가장 앞에 있는 정수를 출력 (비어있으면 -1 출력) back: 큐의 가장 뒤에 있는 정수를 출력 (비어있으면 -1 출력) 큐를 구현하는 문제입니.. 2023. 7. 17.
[자료구조/스택] 백준 10828 스택 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 2. 문제 풀이 - push X: 정수 X를 스택에 넣는 연산 - pop: 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력 (빈 스택이면 -1 출력) - size: 스택에 들어있는 정수의 개수 출력 - empty: 스택이 비어있으면 1, 아니면 0을 출력 - top: 스택의 가장 위에 있는 정수를 출력 (빈 스택이면 -1 출력) 스택을 구현하는 문제입니다. 2022.02.10 - [Algori.. 2023. 7. 17.
[구현] 백준 28295 체육은 코딩과목 입니다 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 28295번: 체육은 코딩과목 입니다 $10$개의 지시를 모두 이행한 후 학생들이 바라보는 방향을 나타내는 문자를 출력한다. 학생들이 바라보는 방향이 북쪽이라면 N, 동쪽이라면 E, 서쪽이라면 W, 남쪽이라면 S를 출력한다. www.acmicpc.net 2. 문제 풀이 총 10번의 지시 후에 바뀐 각도를 구하는 문제입니다. 각도는 우향우(+90), 뒤로 돌아(+180), 좌향좌(-90)로 움직입니다. 3. 코드 import sys input = sys.stdin.readline # 입력 x = 1080 # 북쪽 for _ in range(10): direction = int(input()) if direction == 1: x += 90 elif direc.. 2023. 7. 4.
[자료구조/집합] 백준 1269 대칭 차집합 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 1269번: 대칭 차집합 첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어 www.acmicpc.net 2. 문제 풀이 두 집합 A, B가 주어집니다. A와 B의 합집합에서 교집합을 뺀 대칭 차집합의 원소 개수를 구합니다. 3. 코드 import sys input = sys.stdin.readline n, m = map(int, input().split()) A = set(map(int, input().split())) B = set(map(int, input().split())) print(len(A-B) +.. 2023. 7. 3.
[구현/게임이론] 백준 9661 돌 게임 7 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 9661번: 돌 게임 7 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1,000,000,000,000) www.acmicpc.net 2. 문제 풀이 이번에는 4의 제곱만큼 돌을 가져갑니다. 만약 돌을 가져갈 수 없는 사람은 지게 됩니다. (가능한 개수: 1, 4, 16, 64...) 돌이 있다면 1개는 무조건 가져갈 수 있으므로, 마지막 돌을 가져가는 사람이 이기는 것과 일맥상통합니다. 3. 코드 # CY가 이김 2, 5, 7, 10, 12... # 입력 n = int(input()) # 게임이론 if n % 5 == 0 or n % 5 == 2: print("CY") else: print("SK") 마찬가지로 n이 1일 때부터 이기는 경우를 나열해보고, 규.. 2023. 7. 3.
[구현/게임이론] 백준 9660 돌 게임 6 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 9660번: 돌 게임 6 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1,000,000,000,000) www.acmicpc.net 2. 문제 풀이 2023.07.03 - [Algorithm] - [동적계획법/DP] 백준 9657 돌게임 3 - 파이썬(Python) [동적계획법/DP] 백준 9657 돌게임 3 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 9657번: 돌 게임 3 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 2. 문제 풀이 각 플레이어는 번갈아가며 돌을 1개, 3개 또는 4개를 star7sss.tistory.com 돌 게임 3에서 구현했던 코드를 통해 규칙을 .. 2023. 7. 3.
[구현/게임이론] 백준 9659 돌 게임 5 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 9659번: 돌 게임 5 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1,000,000,000,000) www.acmicpc.net 2. 문제 풀이 2023.07.03 - [Algorithm] - [동적계획법/DP] 백준 9656 돌 게임 2 - 파이썬(Python) [동적계획법/DP] 백준 9656 돌 게임 2 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 9656번: 돌 게임 2 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 2. 문제 풀이 돌은 1개 혹은 3개씩 가져갈 수 있으며, 마지막 돌을 star7sss.tistory.com 돌 게임 2 풀이 때 발견한 규칙을 적용하.. 2023. 7. 3.
[동적계획법/DP] 백준 9658 돌 게임 4 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 9658번: 돌 게임 4 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 2. 문제 풀이 어쩌다 보니 돌 게임 시리즈... 켠왕을 하고 있네요.. 2023.07.03 - [Algorithm] - [동적계획법/DP] 백준 9657 돌게임 3 - 파이썬(Python) [동적계획법/DP] 백준 9657 돌게임 3 - 파이썬(Python) [ Contents ] 1. 문제 (링크 참조) 9657번: 돌 게임 3 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. www.acmicpc.net 2. 문제 풀이 각 플레이어는 번갈아가며 돌을 1개, 3개 또는 4개를 star7sss.tistory.. 2023. 7. 3.