728x90
반응형

python 32

단계별로 풀어보기 4 - 1차원 배열(4)

문제번호 3052번 나머지 첫째 줄부터 열 번째 줄까지 한 줄에 하나의 숫자가 입력된다. 첫째 줄에 42로 나누었을 때, 서로 다른 나머지가 몇 개 있는지 출력해야 한다. 답안 : 1 remain = set() 2 for _ in range(10): 3 a = int(input())%42 4 remain.add(a) 5 print(len(remain)) comment : # 나머지가 중복이 되면 안되기 때문에 나머지는 집합타입으로 설정해준다. # remain = {}이라고 하면 remain의 타입은 딕셔너리이다. # 10번을 입력하는 반복문에 입력함수를 넣고, 42에 대한 나머지를 집합의 원소로 추가시키는 코드를 작성한다. # 집합에 대해서 원소의 길이를 출력해주는 코드를 작성한다. -----------..

단계별로 풀어보기 4 - 1차원 배열(3)

문제번호 10810 공 넣기 첫째 줄에 N M이 입력된다. 둘째 줄부터 M째 줄까지 공을 넣는 방법 i j k가 입력된다. 1번 바구니부터 N번 바구니에 들어있는 공의 번호를 공백으로 구분해 출력해야 한다. 공이 없으면 0을 출력한다. 바구니에는 공을 1개만 넣을 수 있기 때문에 가장 마지막에 넣은 공의 번호를 출력해야 한다. 답안 : 1 import sys 2 N, M = map(int, sys.stdin.readline().split()) 3 busket_list = [0 for _ in range(N)] 4 for _ in range(M): 5 i, j, k = map(int, sys.stdin.readline().split()) 6 for idx in range(i-1, j): 7 busket_l..

단계별로 풀어보기 4 - 1차원 배열(2)

문제번호 10871번 X보다 작은 수 첫째 줄에 정수 N X가 입력된다. 둘째 줄에 수열 A를 이루는 정수 N개가 입력된다. 수열 A에서 X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력해야 한다. 답안 : 1 import sys 2 N, X = map(int,sys.stdin.readline().split()) 3 A = list(map(int,sys.stdin.readline().split())) 4 total = [] 5 for i in A : 6 if X > i : 7 total.append(i) 8 for j in total : 9 print(j, end = ' ') comment : # 변수 N, X를 설정해주고 리스트 A를 설정해준다. # 최종 출력되는 값을 리스트로 나열하기 위하여 ..

단계별로 풀어보기 3 - 반복문(4), 4 - 1차원 배열(1)

문제번호 10952번 A+B -5 테스트 케이스 a b가 입력되고, a+b가 출력되어야 한다. 그리고 a b 값이 0 0이면 프로그램은 종료된다. 답안 : 1 import sys 2 while True : 3 a, b = map(int,sys.stdin.readline().split()) 4 if a == 0 and b == 0 : 5 break 6 print(a+b) comment : # 빠른 속도처리를 위해서 sys모듈을 불러오고, while문을 이용하여 a, b가 0이 아닐 경우를 제외하고 계속 반복할수 있도록 하였다. # a,b가 0인 경우에는 while루프를 빠져나올 수 있도록 조건문에 break를 넣어주었다. # a, b값이 0일 경우에 값이 출력되지 않기 때문에 print문을 3,4번 줄 사..

단계별로 풀어보기 3 - 반복문(3)

문제번호 11021번 A+B -7 첫 번째 줄에 케이스 개수 T가 입력되고, 그 이후에 A B가 입력되면 각 케이스마다 Case #x: 를 출력한 뒤 A+B값을 출력한다. 답안 : 1 T = int(input()) 2 import sys 3 for i in range(T): 4 A, B = map(int,sys.stdin.readline().split()) 5 print('Case #',i+1,': ',A+B, sep='') comment : # T에 정수형으로 입력을 받은 후 sys모듈을 불러왔다. # T의 개수만큼 for 반복문을 사용하여 반복시켰고, 출력되는 문자는 Case #1부터 이므로 0부터 시작하는 range함수의 특성에 1을 더해주어야 제대로 출력이 된다. # 중간에 변수와 문자 사이에 띄..

단계별로 풀어보기 3 - 반복문(2)

문제번호 25304번 영수증 첫째 줄에 총금액 X, 둘째 줄에 구매한 물건의 종류수 N, 이후 N개의 줄에는 각 물건의 가격(a) 개수(b)를 입력한다. 구매한 물건들의 가격과 개수로 계산한 총금액(sigma(a*b))이 X와 같으면 Yes를 출력해야 한다. 만약 다르면 No를 출력해야 한다. 답안 : 1 X = int(input()) 2 import sys 3 N = int(input()) 4 total = 0 5 for i in range(N): 6 a, b = map(int,sys.stdin.readline().split()) 7 total += a*b 8 if total == X : 9 print('Yes') 10 else: 11 print('No') comment : # 총금액 X를 정수형으로 ..

단계별로 풀어보기 3 - 반복문

문제번호 2739번 구구단 N을 입력받고 구구단 N단을 출력해야 한다. 답안 : 1 N = int(input()) 2 for i in range(1,10) : 3 print(N,'*',i,'=',N*i) comment : # int(input())으로 정수값을 입력받은 후 for 반복문을 사용하여 구구단을 출력해준다. ---------------------------------------------------------- 문제번호 10950번 A+B-3 첫 번째 입력값에 테스트 케이스의 개수를 입력 받고, 그 이후의 줄에 개수만큼 A B의 값을 입력받으면 값마다 A+B를 출력해야 한다. 답안 : 1 T = int(input()) 2 c = [] 3 for i in range(T): 4 a, b = map..

단계별로 풀어보기 1 - 입출력과 사칙연산(3)

문제번호 11382번 꼬마 정민 A B C를 입력하면 A+B+C 값을 출력해야 한다. 답안 : 1 a, b, c = input().split() 2 a, b, c = int(a), int(b), int(c) 3 total = a+b+c 4 print(total) comment : # 값 세 개를 변수 a, b, c에 저장하고 정수로 바꾼다. # 정수를 다 더한 후 변수 total에 저장하고 total을 출력한다. ---------------------------------------------------------- 문제번호 10171번 고양이 고양이를 출력해야 한다. 답안 : 1 print('\ /\\') 2 print(" ) ( ')") 3 print('( / )') 4 print(' \(__)|')..

728x90
반응형