1078 : [기초-종합] 짝수 합 구하기(설명)
for 반복문으로 1부터 입력받은 수까지 반복하고, 반복문 안에서 짝수일 경우 그 숫자들의 합을 누적하여 저장한다.
n = int(input())
s = 0
for i in range(1,n+1):
if i % 2 == 0:
s += i
print(s)
1079 : [기초-종합] 원하는 문자가 입력될 때 까지 반복 출력하기(설명)
입력값들을 변수 하나에 공백으로 분리하여 입력받고, 입력 받은 문자 수만큼 반복하여 각 문자를 각 줄에 출력하고, q를 확인하면 반복문을 종료한다.
chars = input().split()
for i in chars:
print(i)
if i == 'q':
break
1080 : [기초-종합] 언제까지 더해야 할까?
정수를 입력받아, 1부터 그 정수 만큼 반복하며 합을 누적한다. 누적된 합이 입력받은 정수보다 같거나 커지면 마지막으로 더한 정수를 출력하고 반복문을 종료시킨다.
n = int(input())
s = 0
for i in range(1, n):
s += i
if s >= n:
print(i)
break
1081 : [기초-종합] 주사위를 2개 던지면?(설명)
첫 번째 주사위 면이 1부터 n일 때 각 면의 주사위 숫자에 두번째 주사위 1부터 m이 조합될 수 있다. 1부터 n 까지 반복하면서 그 안에서 1부터 m까지 반복하여 첫번째 주사위 면이 1일때 두번째 주사위 면이 1, 2, 3, ... , m인 경우를 모두 출력할 수 있다.
n, m = map(int, input().split())
for i in range(1, n+1):
for j in range(1, m+1):
print(i,j)
1082 : [기초-종합] 16진수 구구단?
입력 받은 값을 1부터 F까지 반복하여 계산하여 출력하면 된다. 출력 예시를 보니 16진수 인데, 0x가 안붙어 있고, 다 대문자로 출력되어 있어서, 출력값을 문자열로 바꿔서 인덱스 슬라이싱과 .upper()을 통해 출력 형태를 예시와 동일하게 맞췄다.
dan = input()
dan = int(dan, 16)
for i in range(1, 16):
print('{}*{}={}'.format(str(hex(dan))[2:].upper(),
str(hex(i))[2:].upper(), str(hex(dan*i))[2:].upper()))
1083 : [기초-종합] 3 6 9 게임의 왕이 되자!(설명)
1부터 입력값까지 반복하는 코드를 작성하고, 반복문 안에서 현재 값이 3 또는 6또는 9면 or연산을 이용하여 X를 출력하고 continue를 이용하여 반복 처음을 돌아가고, 3, 6, 9가 아니라면 그 숫자를 출력한다. 출력은 한 줄로 한 칸 씩 띄워서 하므로 end = ' '를 사용하였다.
n = int(input())
for i in range(1,n+1):
if i == 3 or i == 6 or i == 9:
print('X', end = ' ')
continue
print(i, end=' ')
1084 : [기초-종합] 빛 섞어 색 만들기(설명)
r, g, b는 각각 하나라도 다른 값을 가지면 다른 색을 만들수 있으므로 0부터 각 색에 대한 입력값까지 3번 중첩하여 반복하면 모든 경우의 수를 출력할 수 있고, 각 경우의 조합을 출력할때 가지수를 세는 변수를 만들어 1씩 누적한후 마지막에 누적한 값을 출력하면 된다.
r, g, b = map(int, input().split())
cnt = 0
for i in range(0, r):
for j in range(0, g):
for k in range(0, b):
print(i,j,k)
cnt += 1
print(cnt)
1085 : [기초-종합] 소리 파일 저장용량 계산하기(설명)
입력받은 h,b,c,s를 위에서 제시한 계산식에 넣어 계산하고, MB단위로 맞추면 된다. 위 제시한 계산식에 넣어 계산했을 때의 단위는 bit이기 때문에 MB 단위로 표현하려면 8로 한번 나누고, 1024로 두번 나눈 후 소수점 첫째자리까지 출력하면 된다.
h, b, c, s = map(int, input().split())
pcm = h * b * c * s
mb = pcm / 8 / 1024 / 1024
print(format(mb, '.1f'), 'MB')
1086 : [기초-종합] 그림 파일 저장용량 계산하기(설명)
입력 값들을 문제에서 제시한 계산식에 넣어 계산 한 뒤 MB단위로 바꾸면 된다. 계산식에 넣어 계산하면 단위가 비트이기 때문에 8로 나눈 후 1024로 두번 나누면 된다.
w, h, b = map(int, input().split())
bit = w * h * b
mb = bit / 8 / 1024 /1024
print(format(mb,'.2f'), 'MB')
1087 : [기초-종합] 여기까지! 이제 그만~(설명)
1 부터 입력값 만큼 반복하며 각 숫자의 합을 누적한다. 누적한 값이 입력한 값과 같아지거나 더 커지면 break로 반복문을 종료하고 누적했던 값을 출력한다.
n = int(input())
s = 0
for i in range(1, n+1):
s += i
if s >= n:
break
print(s)
1088 : [기초-종합] 3의 배수는 통과?(설명)
for 반복문으로 1부터 입력 받은 숫자까지 출력하는데, 3의 배수이면 continue로 숫자를 출력하지 않고, 반복문 처음으로 돌아간다.
n = int(input())
for i in range(1, n+1):
if i % 3 == 0:
continue
print(i, end = ' ')
1089 : [기초-종합] 수 나열하기1
수학에서 등차수열 n번째 항을 구하는 공식을 이용하여 풀었다.
a, d, n = map(int, input().split())
an = a + (n-1)*d
print(an)
1090 : [기초-종합] 수 나열하기2
수학에서 등비수열의 n번째 항을 구하는 공식을 이용하여 풀었다.
a, r, n = map(int, input().split())
an = a * r ** (n-1)
print(an)
1091 : [기초-종합] 수 나열하기3
시작 값에 어떤 값을 곱하고, 더하는 행위를 계속 반복하므로 n번째 반복했을때의 수를 구하는 것이므로 반복문으로 n번째 까지 반복한 값을 출력했다.
a, m, d, n = map(int, input().split())
for i in range(n-1):
a = m * a + d
print(a)
1092 : [기초-종합] 함께 문제 푸는 날(설명)
가입한 다음 모두 같이 함께 방문하는 날은 각 방문 주기의 최소 공배수 이다. for문으로 하루씩 증가시키면서 and연산으로 방문 주기의 최소공배수를 출력하면 된다.
a, b, c = map(int,input().split())
day = 1
while True:
if day % a == 0 and day % b == 0 and day % c == 0:
print(day)
break
day += 1
1093 : [기초-1차원 배열] 이상한 출석번호 부르기1(설명)
무작위로 부른 출석 번호를 입력 받아 리스트로 만들고, 23개의 요소가 0으로 채워진 리스트를 만들어 23번 반복하며 리스트의 각 요소를 무작위로 부른 리스트에서 각 번호가 몇번 불러졌는지 .count로 세서 넣었다.
n = int(input())
num = map(int, input().split())
num = list(num)
num_li = [0]*23
for i in range(len(num_li)):
num_li[i] = num.count(i+1)
for i in num_li:
print(i, end = ' ')
1094 : [기초-1차원 배열] 이상한 출석번호 부르기2(설명)
리스트는 list.reverse()와 같은 형식으로 거꾸로 뒤집을 수 있다. 무작위로 부른 번호를 리스트로 만들고 거꾸로 뒤집은 후 출력하면 된다.
n = int(input())
num = map(int, input().split())
num_li = list(num)
num_li.reverse()
for i in num_li:
print(i, end=' ')
1095 : [기초-1차원 배열] 이상한 출석번호 부르기3(설명)
list.sort()와 같이 사용하면 리스트가 오름차순으로 정렬된다. 무작위로 부른 번호들을 리스트로 만들어 오름차순으로 정렬한 후 첫번째 요소를 출력하면 된다.
n = int(input())
num = map(int, input().split())
num_li = list(num)
num_li.sort()
print(num_li[0])
1096 : [기초-2차원 배열] 바둑판에 흰 돌 놓기(설명)
19 * 19 크기의 2차원 리스트의 모든 요소를 다 0으로 초기화 하고, 흰돌의 개수를 입력 받고, 개수 만큼 반복하여 해당 위치의 요소를 1로 바꿨다. for 문 2중 중첩으로 2차원 리스트의 모든 요소를 바둑판 모양으로 출력하였다.
n = int(input())
pan = [[0]*19 for i in range(19)]
for i in range(n):
x, y = map(int, input().split())
pan[x-1][y-1] = 1
for i in range(19):
for j in range(19):
print(pan[i][j], end = ' ')
print()
'Project H4C Study Group' 카테고리의 다른 글
[Project H4C] opentutorials HTML(1) (0) | 2021.02.04 |
---|---|
[Project H4C] 코드업 기초100제(4) (0) | 2021.02.04 |
[Project H4C] 코드업 기초100제(2) (0) | 2021.02.03 |
[Project H4C] 코드업 기초 100제 (1) (0) | 2021.02.02 |
[Project H4C] 파이썬 코딩도장(12) (0) | 2021.01.31 |