본문 바로가기
728x90
반응형

분류 전체보기510

[백준] 25501번 : 재귀의 귀재 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 25501번: 재귀의 귀재 각 테스트케이스마다, isPalindrome 함수의 반환값과 recursion 함수의 호출 횟수를 한 줄에 공백으로 구분하여 출력한다. www.acmicpc.net 1. 문제 설명 2. 풀이과정 해당 문제는 팰린드롬인지 파악하는 isPalindrome 함수의 반환값과 그 과정에서 호출된 recursion 함수의 횟수를 구해야 하는 문제이다. isPalindrome 함수의 반환값은 문제에서 주어진 함수를 그대로 가져오면 쉽게 구할 수 있다. 하지만 recursion 함수의 횟수는 구할 수 없다. 하여 각 함수에 cnt라는 새로운 인수를 추가하여 recursion 함수의 횟수를 저장한다. recursion 함수에서 팰린드롬인지 아닌지 결과를 반환할 때, 기존 함수의 반환인 해당 결.. 2023. 12. 13.
[백준] 20920번 : 영단어 암기는 괴로워 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 영어 지문에 나오는 단어의 개수와 외울 단어의 길이 기준을 입력받는다. N, M = map(int, sys.stdin.readline().split()) 영어 단어와 해당 단어가 나온 횟수를 저장할 딕셔너리를 생성한다. d = {} 영어 단어의 개수만큼 반복하며 f.. 2023. 12. 12.
[백준] 2108번 : 통계학 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 수의 개수를 입력받는다. N = int(sys.stdin.readline()) 각 수를 저장할 리스트를 생성하고 li = [] 각 수가 입력되는 횟수를 저장할 딕셔너리를 생성한다. d = {} 수의 개수만큼 반복하며 for i in range(N) 각 수를 입력받고 num = int(sys.stdin.readline()) 만약 해당 수가 이미 .. 2023. 12. 11.
[백준] 26069번 : 붙임성 좋은 총총이 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 26069번: 붙임성 좋은 총총이 첫번째 줄에는 사람들이 만난 기록의 수 $N\ (1 \le N \le 1\ 000)$이 주어진다. 두번째 줄부터 $N$개의 줄에 걸쳐 사람들이 만난 기록이 주어진다. $i + 1$번째 줄에는 $i$번째로 만난 사람들의 이름 $A_i$ www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 사람들이 만난 기록의 수를 입력받는다. N = int(sys.stdin.readline()) 무지개 댄스를 추고 있는 사람의 이름을 저장할 세트를 생성하고 dance = set() 기록이 시작되기 전 무지개 댄스를 추고 있는 ChongChong 이를 추가한다. dance.add('.. 2023. 12. 10.
[백준] 25192번 : 인사성 밝은 곰곰이 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 25192번: 인사성 밝은 곰곰이 첫번째 새로운 사람이 들어온 뒤 pjshwa, chansol, chogahui05은 모두 곰곰티콘으로 인사했다. 두번째 새로운 사람이 들어온 뒤 pjshwa와 chansol은 다시 곰곰티콘으로 인사했다. www.acmicpc.net 1. 문제 설명 2. 풀이과정 해당 문제는 채팅방에서 곰곰티콘이 사용된 횟수를 구하는 문제이다. 한 채팅방에서 채팅을 입력한 유저를 한 세트에 저장한다. 여기서 유저의 이름을 세트에 저장하는 이유는 새로운 사람이 들어오기 전까지는 원래 있던 사람들끼리 채팅을 하는 것이므로 한 명당 한 번의 곰곰티콘을 사용하고, 이후 채팅은 그냥 일반 채팅이기 때문이다. 이후 ENTER가 입력되고 새로운 사람이 들어오면 새롭게 곰곰티콘을 사용할 수 있다. 하여.. 2023. 12. 9.
[백준] 1037번 : 약수 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되 www.acmicpc.net 1. 문제 설명 2. 풀이과정 해당 문제는 진짜 약수를 보고 N을 구하는 문제이다. 주어지는 진짜 약수는 1과 N을 제외하고 입력받아지기 때문에 약수를 정렬했을 때 제일 작은 수와 제일 큰 수를 곱하면 N이 된다. 그 이유는 원래 N의 약수를 구하면 제일 작은 약수가 1이고, 제일 큰 약수가 N이 되는데 입력받은 진짜 약수에는 1과 N이 없다. 하지만 전체 약수에서 1과 N을 제거했을 때, 그다음 제일 작은 수와 제일 큰 수의 곱 또한 N이 되기 때문에 .. 2023. 12. 8.
[백준] 24511번 : queuestack - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 24511번: queuestack 첫째 줄에 queuestack을 구성하는 자료구조의 개수 $N$이 주어진다. ($1 \leq N \leq 100\,000$) 둘째 줄에 길이 $N$의 수열 $A$가 주어진다. $i$번 자료구조가 큐라면 $A_i = 0$, 스택이라면 $A_i = 1$이다. 셋째 줄 www.acmicpc.net 1. 문제 설명 2. 풀이과정 해당 문제는 queue와 stack인 자료구조로 이루어진 수열에서 원소를 추가로 삽입했을 때 나오는 원소를 반환하는 문제이다. 원소를 삽입하고 삭제하는 과정에서 stack 자료구조는 삽입하는 원소와 삭제하는 원소가 동일하므로 고려할 필요가 없다. 따라서 queue 자료구조인 원소만 고려해 주면 된다. queue 자료구조인 원소들만 따로 모아 새로운 qu.. 2023. 12. 7.
[백준] 2346번 : 풍선 터뜨리기 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 2346번: 풍선 터뜨리기 1번부터 N번까지 N개의 풍선이 원형으로 놓여 있고. i번 풍선의 오른쪽에는 i+1번 풍선이 있고, 왼쪽에는 i-1번 풍선이 있다. 단, 1번 풍선의 왼쪽에 N번 풍선이 있고, N번 풍선의 오른쪽에 1번 풍선 www.acmicpc.net 1. 문제 설명 2. 풀이과정 해당 문제는 풍선 안의 종이에 적혀 있는 숫자에 따라 풍선을 모두 터뜨리는 문제이다. 먼저 1번 풍선을 터뜨리고 풍선 안의 종이에 적혀 있는 숫자를 확인해 다음 풍선을 터뜨린다. 숫자가 양수이면 숫자의 크기만큼 뒤로 이동하고, 숫자가 음수이면 앞으로 이동한다. 풍선을 터뜨려도 풍선의 위치가 변하면 안 되기 때문에 처음에 입력받은 풍선의 위치와 종이에 적혀 있는 숫자를 하나의 리스트로 묶어 deque 자료에 저장한다.. 2023. 12. 6.
[백준] 28279번 : 덱 2 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 28279번: 덱 2 첫째 줄에 명령의 수 N이 주어진다. (1 ≤ N ≤ 1,000,000) 둘째 줄부터 N개 줄에 명령이 하나씩 주어진다. 출력을 요구하는 명령은 하나 이상 주어진다. www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 덱을 deque 자료구조로 만들기 위해 deque 함수를 불러온다. from collections import deque 명령어의 개수를 입력받는다. N = int(sys.stdin.readline()) 덱을 생성한다. d = deque() 명령어 개수만큼 반복하며 for _ in range(N) 하나 이상의 명령어를 정수형으로 입력받아 리스트로 저장한다. o.. 2023. 12. 5.
[백준] 18258번 : 큐 2 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 18258번: 큐 2 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 1. 문제 설명 2. 풀이과정 sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys 큐를 deque 자료구조로 만들기 위해 deque 함수를 불러온다. from collections import deque 명령어의 개수를 입력받는다. N = int(sys.stdin.readline()) 빈 큐를 생성한다. queue = deque() 명령어의 개수만큼 반복하며 for _ in range(N.. 2023. 12. 4.
728x90
반응형