본문 바로가기

코딩 테스트

(65)
[백준 2741번 파이썬] N 찍기 수를 입력받으면 1부터 입력받은 수까지 1열로 출력하는 코드를 작성하면 된다 import sys num = int(sys.stdin.readline()) for i in range(1, num+1): print(i) for 문을 이용해서 1부터 입력값까지 1열로 출력해주면 된다
[백준 15552번 파이썬] 빠른 A+B 처음에 몇 개의 묶음을 입력받을지 수를 입력받고 이후로 덧셈의 값을 출력해낼 두 수의 묶음을 입력받는다 import sys num = int(sys.stdin.readline()) for i in range(num): A, B = map(int, sys.stdin.readline().split()) print(A + B) sys.stdin.readline()은 int 형태로 값을 입력받지 않기 때문에 int()로 묶어줘야 하고 그렇게 받은 묶음 개수로 for 문을 돌리며 A, B의 수를 반복적으로 받음과 동시에 출력해준다 여기에서 map은 리스트 요소로 만들어주는 함수로 요소의 변수형을 설정하고(int), 요소로 변경할 문자를 받는다(sys.stdin.readline()) 여기에서 split()은 띄어쓰..
[백준 8393번 파이썬] 합 입력값이 들어오면 1~입력값까지의 수를 다 더해 출력해주면 된다 num = int(input()) a = 0 for i in range(1, num+1): a += i print(a) for문에서 1부터 입력값+1까지 진행하면 i가 입력값까지만 제대로 진행하고 그 이후에는 멈추는 성질을 가지고 있다 즉, for문에서 최대는 수행하고자 하는 수에 1을 더한 수로 지정해야 한다
[백준 2480번 파이썬] 주사위 세개 세 개의 주사위를 던져서 세 주사위 다 같은 눈이 나오면 10000 + (같은 눈) * 1000 두 주사위만 같은 눈이 나오면 1000 + (같은 눈) * 100 다 다른 눈이 나오면 (제일 큰 눈) * 100원의 상금을 받는 코드를 작성하면 된다 import sys a, b, c = map(int, sys.stdin.readline().split()) if a == b and a == c: print(10000 + a * 1000) elif a == b or a == c: print(1000 + a * 100) elif b == c: print(1000 + b * 100) else: print(max(a, b, c) * 100) 조건문 파트답게 if문을 사용하면 쉽게 작성할 수 있는데 이때 elif문은..
[백준 2525번 파이썬] 오븐 시계 현재 시간의 시와 분을 입력받으면 두 번째 입력값인 소요 시간이 흐른 뒤의 시간을 출력하는 문제이다 소요 시간이 분 단위로 들어오는 점을 감안해서 출력값에서 시는 24시를 넘기지 않고, 분은 60분을 넘기지 않게 코딩하면 된다 import sys H, M = map(int, sys.stdin.readline().split()) a = int(sys.stdin.readline()) H += a//60 M += a%60 if M > 59: H += 1 M -= 60 if H > 23: H -= 24 print(H, M) 몫 나눗셈과 나머지 나눗셈을 통해 시와 분에 각자 증가시켜야 할 값을 더하고 그 값이 각각 24와 60 이상이 되지 않았는지 조건문을 통해 검증하면 된다
[백준 18108번 파이썬] 1998년생인 내가 태국에서는 2541년생?! 문제 CPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국은 불멸기원(佛滅紀元), 즉 석가모니가 열반한 해를 기준으로 연도를 세는 불기를 사용한다. 반면, 우리나라는 서기 연도를 사용하고 있다. 불기 연도가 주어질 때 이를 서기 연도로 바꿔 주는 프로그램을 작성하시오. 입력 서기 연도를 알아보고 싶은 불기 연도 y가 주어진다. (1000 ≤ y ≤ 3000) 출력 불기 연도를 서기 연도로 변환한 결과를 출력한다. 불기 연도와 서기 연도의 차이를 출력해야하는 문제이다 올해는 2562년이라는 말이 적혀있지만 올해라는 건 정확한 연도 표시를 하고 있지 ..
[백준 10926번 파이썬] ??! 문제 준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오. 입력 첫째 줄에 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어진다. 아이디는 알파벳 소문자로만 이루어져 있으며, 길이는 50자를 넘지 않는다. 출력 첫째 줄에 준하의 놀람을 출력한다. 놀람은 아이디 뒤에 ??!를 붙여서 나타낸다. 이 문제는 여느 홈페이지 로그인 화면에서 확인할 수 있는 아이디 중복 확인을 주제로 한 것이다 다행히 문제에 분명하게 적혀 있듯이 이미 존재하는 아이디를 입력한다는 전제가 깔려있다 그렇기 때문에 입력받은 문자열 뒤에 ??!을 ..
[백준 10950번 파이썬] A+B - 3 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 각 테스트 케이스마다 A+B를 출력한다. 문제를 다시 이해해 보자면 두 수를 입력했을 때 두 수의 덧셈을 출력하는 코드인데, 그 코드를 몇 번 반복할 건지를 가장 먼저 입력받고 케이스 순서대로 입력값을 받고, 출력값을 줘야 한다. num = int(input()) for i in range(num): A, B = map(int, input().split()) print(A+B) 이번에도 for문을 집중해서 봐줘야 하는데, 현재의 range 안에는 숫자가 하나 들..