백준(Python) 풀이/수학 213

백준(Python) 2292번 벌집 풀이

Python으로 구현한 2292번 벌집 문제 풀이입니다. https://www.acmicpc.net/problem/2292 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net n = int(input()) check = 1 room_count = 6 count = 1 while n > check : count += 1 check += room_count room_count += 6 print(count) 이 문제의 규칙을 찾아본다면 방을 1개 거칠 때마다 해당 방에 존재하는 수의 개수가 6씩 증가한다. 입력받은 n 값이 ..

백준(Python) 1978번 소수 찾기 풀이

Python으로 구현한 1978번 소수 찾기 문제 풀이입니다. https://www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net n = int(input()) data = list(map(int, input().split())) count = 0 for i in data : check = 0 if i == 1 : continue for j in range(2, i) : if i % j == 0 : check = 1 if check == 0 : count += 1 print(count) 반복문을 통해 n개의 수를 하나씩 확인하여 해..

백준(Python) 10872번 팩토리얼 풀이

Python으로 구현한 10872번 팩토리얼 문제 풀이입니다. https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net n = int(input()) result = 1 while n > 1 : result *= n n -= 1 print(result) 반복문을 통해 result에 n의 값을 곱하고 n을 1씩 감소시켜 나간다. 이와 같은 방식을 n이 1보다 클 때까지 반복하고 최종적으로 result 값을 출력한다.

백준(Python) 2908번 상수 풀이

Python으로 구현한 2908번 상수 문제 풀이입니다. https://www.acmicpc.net/problem/2908 2908번: 상수 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 www.acmicpc.net a, b = input().split() a = int(a[::-1]) b = int(b[::-1]) if a > b : print(a) else : print(b) 두 수를 a와 b에 입력받고 각각의 값을 역순으로 다시 저장한다. 최종적으로 조건문을 통해 두 수를 비교하여 더 큰 값을 출력한다.

백준(Python) 3052번 나머지 풀이

Python으로 구현한 3052번 나머지 문제 풀이입니다. https://www.acmicpc.net/problem/3052 3052번: 나머지 각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다. www.acmicpc.net data = [] for i in range(10) : n = int(input()) data.append(n % 42) data = set(data) print(len(data)) 10개의 숫자를 입력받아 각 수를 42로 나눈 나머지 값을 data 리스트에 넣는다. set( ) 함수를 통해 중복된 값을 제거해준 뒤 최종적으로 리스트에 포함되어 있는 값의 개수를 출력한다.

백준(Python) 4344번 평균은 넘겠지 풀이

Python으로 구현한 4344번 평균은 넘겠지 문제 풀이입니다. https://www.acmicpc.net/problem/4344 4344번: 평균은 넘겠지 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. www.acmicpc.net c = int(input()) for _ in range(c) : data = list(map(int, input().split())) avg = sum(data[1:]) / data[0] count = 0 for i in range(1, len(data)) : if data[i] > avg : count += 1 result = count / data[0] * 100 print('%.3f'% result+'..

백준(Python) 2839번 설탕 배달 풀이

Python으로 구현한 2839번 설탕 배달 문제 풀이입니다. https://www.acmicpc.net/problem/2839 2839번: 설탕 배달 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그 www.acmicpc.net n = int(input()) result = 0 while n >= 0 : if n % 5 == 0 : result += (n // 5) print(result) break n -= 3 result += 1 else : print(-1) 입력받은 수가 5의 배수라면 변수 result에 n을 5로 나눈 몫을 누적하고 최종 result 값을 출력한..

백준(Python) 14681번 사분면 고르기 풀이

Python으로 구현한 14681번 사분면 고르기 문제 풀이입니다. https://www.acmicpc.net/problem/14681 14681번: 사분면 고르기 점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다. www.acmicpc.net x, y = int(input()), int(input()) if x >= 0 and y >= 0 : print(1) elif x = 0 : print(2) elif x < 0 and y < 0 : print(3) else : print(4) 1. x와 y 값 모두 양수라면 1을 출력한다. 2. x의 값이 음수이고 y의 값이 양수라면 2를 출력한다. 3. x와 y 값 모두 음수라면 3을 출력한다. 4. 모두 해당되지 않는다..

백준(Python) 1546번 평균 풀이

Python으로 구현한 1546번 평균 문제 풀이입니다. https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net n = int(input()) data = list(map(int, input().split())) max = max(data) result = [] for i in data : result.append(i / max * 100) print(sum(result) / n) 반복문을 통해 data 리스트에 있는 각 값들을 문제에서 요구하는..