본문 바로가기

분류 전체보기165

[백준/Python] 3052번 나머지 문제 ■ 3052번 나머지 문제 ■ 코드 풀이 아이디어는 다음과 같습니다. 1) 파이썬에서 set은 중복된 값을 자동으로 제거해주는 자료형입니다. 2) 나머지 숫자들을 담을 number_set을 선언해줍니다. 3) 사용자로부터 number에 정수값을 입력 받고, 42로 나눈 나머지 값을 number_set에 추가해줍니다. (add 메서드) 4) number_set의 길이를 출력합니다. import sys number_set = set() for i in range(10): number = int(sys.stdin.readline()) number %= 42 number_set.add(number) print(len(number_set)) 다른 분들은 어떻게 풀었을까요? 아래와 같이 list만으로도 풀 수 있습.. 2023. 3. 20.
[백준/Python] 5597번 과제 안 내신 분..? 문제 ■ 5597번 과제 안 내신 분..? 문제 ■ 코드 풀이 아이디어는 다음과 같습니다. 1) 길이가 30인 출석부 list에 모든 값을 0으로 초기화 합니다. 2) 입력 받은 값(과제 제출한 학생의 출석부 번호)을 각각의 출석부 list에 업데이트 합니다. 이 때, list의 index 값에 접근하기 위해 -1을 빼줍니다. 3) 이제 출석부 list에는 과제를 제출하지 않은 학생의 번호에만 0 값이 남아 있습니다. 그 index 값을 리스트의 index 메서드로 찾아줍니다. 같은 index를 return하지 않도록 찾은 학생의 번호에는 -1을 넣어줍니다. import sys students = [0 for i in range(30)] for i in range(28): student_idx = int(sy.. 2023. 3. 20.
[백준/Python] 10813번 공 바꾸기 문제 ■ 10813번 공 바꾸기 문제 ■ 코드 풀이 아이디어는 다음과 같습니다. 1) basket이라는 list에 1부터 N까지의 숫자를 넣습니다. 2) 바꾸기를 위해 temp라는 변수를 선언합니다. 3) 반복 횟수 M번 동안 for loop를 돌면서 바꿀 바구니 i와 j를 입력 받습니다. 4) i번째 바구니의 값을 temp에 넣고, i번째 바구니에 j번째 바구니의 값을 넣습니다. 5) j번째 바구니에 temp 값을 넣습니다. 6) 최종 basket list의 값을 출력합니다. N,M = map(int, input().split()) basket = [i for i in range(1,N+1)] temp = 0 for i in range(M): i,j = map(int, input().split()) temp.. 2023. 3. 19.