목록전체 (168)
Kim Seon Deok
https://www.acmicpc.net/problem/1244 1244번: 스위치 켜고 끄기 첫째 줄에는 스위치 개수가 주어진다. 스위치 개수는 100 이하인 양의 정수이다. 둘째 줄에는 각 스위치의 상태가 주어진다. 켜져 있으면 1, 꺼져있으면 0이라고 표시하고 사이에 빈칸이 하나씩 www.acmicpc.net 1. 스위치의 처음 상태와 학생 수를 입력받음 2. 스위치가 0일 땐 1로, 1일 땐 0으로 바꾸어 주는 함수 3. 남자일 땐 받은 숫자의 배수에 해당하는 스위치만 바꾸어줌 4. 여자일 땐 받은 숫자에 해당하는 스위치를 기준으로, 좌우 대칭이면서 구간의 길이가 가장 길 때, 전체 구간의 스위치를 바꾸어줌 여자일 경우 좌우대칭으로 최대구간을 바꾸어주는 부분에서 오류가 많이 났었다. while ..
https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 1. 문자열의 길이가 짝수 2. ( 로 시작해 )로 끝나야 한다. 3. ( 와 ) 의 갯수가 같아야 함 라고 접근했지만, ( ) ) ( ( ) 이라는 반례가 있었다. 그래서 1. 맨 처음에 )로 시작 하면 "NO". 2. (를 담기 위한 빈 리스트 vvps 생성. (로 시작하는 경우 2-1 이후에 (가 왔을 때 (를 vvps에 append 2-2 이후에 )가 왔을 때..
https://www.acmicpc.net/problem/1302 1302번: 베스트셀러 첫째 줄에 오늘 하루 동안 팔린 책의 개수 N이 주어진다. 이 값은 1,000보다 작거나 같은 자연수이다. 둘째부터 N개의 줄에 책의 제목이 입력으로 들어온다. 책의 제목의 길이는 50보다 작거나 같고 www.acmicpc.net 1.하루동안 팔린 책의 개수 N이 주어짐 2.N만큼 책의 제목을 입력으로 받음 3.가장 많이 팔린 책의 제목을 출력 4.가장 많이 팔린 책이 여러개일 경우 사전순으로 가장 앞서는 제목을 출력 N = int(input())## 오늘 하루 동안 팔린 책의 개수 book = [] # 팔린 책 제목을 담을 빈 리스트 for i in range (0,N): book.append(input()) # ..
https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 1.N명의 사람이 원을 이루어 앉음 2.양의 정수 k가 주어짐 3.순서대로 k번째 사람을 제거해 N명의 사람이 모두 제거될 때까지 계속한다. N, k = list(map(int, input().split())) people = [] ans = [] # 정답을 담을 리스트 for i in range(1,N+1): people.append(i) # 제거하려는 인덱스 시작 a = people.pop(k-1) ans.append(a) i = (k-1) # 2부터 시작 & len(people) =..