분류 전체보기 216

[115일차] 햄버거 만들기 - 백준 - 25628(python - 수학, 사칙연산)

3문제 설명 햄버거 가게에서 일하는 종현이는 햄버거를 만드는 일을 하고 있다. 가게에는 햄버거 빵이 A개, 햄버거 패티가 B개 있는데, 이 빵과 패티를 가지고 최대한 햄버거를 많이 만드려고 한다. 햄버거를 만드는 과정은 아주 간단한 세 단계로 이루어져 있다. 1. 그릇 위에 빵을 놓는다. 2. 빵 위에 패티를 올린다. 3. 패티 위에 다시 빵을 올려서 햄버거를 완성시킨다. 햄버거 빵 A개와 햄버거 패티 B개로 만들 수 있는 햄버거의 최대 개수는 얼마일까? 단, 햄버거 빵은 위에 놓는 빵과 아래에 놓는 빵의 구분이 없으며, 남는 빵이나 패티가 있어도 된다. 입력 첫째 줄에 햄버거 빵의 개수와 햄버거 패티의 개수를 의미하는 A, B (1

[114일차] 상수 - 백준 - 2908(python - 수학, 구현)

문제 설명 상근이의 동생 상수는 수학을 정말 못한다. 상수는 숫자를 읽는데 문제가 있다. 이렇게 수학을 못하는 상수를 위해서 상근이는 수의 크기를 비교하는 문제를 내주었다. 상근이는 세 자리 수 두 개를 칠판에 써주었다. 그 다음에 크기가 큰 수를 말해보라고 했다. 상수는 수를 다른 사람과 다르게 거꾸로 읽는다. 예를 들어, 734와 893을 칠판에 적었다면, 상수는 이 수를 437과 398로 읽는다. 따라서, 상수는 두 수중 큰 수인 437을 큰 수라고 말할 것이다. 두 수가 주어졌을 때, 상수의 대답을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 상근이가 칠판에 적은 두 수 A와 B가 주어진다. 두 수는 같지 않은 세 자리 수이며, 0이 포함되어 있지 않다. 출력 첫째 줄에 상수의 대답을 출력한다..

[113일차] 진법 변환 - 백준 - 2745(python - 수학, 구현, 문자)

문제 설명 B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 사용한다. A: 10, B: 11, ..., F: 15, ..., Y: 34, Z: 35 입력 첫째 줄에 N과 B가 주어진다. (2 ≤ B ≤ 36) B진법 수 N을 10진법으로 바꾸면, 항상 10억보다 작거나 같다. 출력 첫째 줄에 B진법 수 N을 10진법으로 출력한다. 예제 입력, 예제 출력 ZZZZZ 36 60466175 코드 및 설명 n, b = input().split(" ") answer = 0 count = 0 for i in range(len(n)-1, -1, -1): if n[i].isa..

[112일차] 팰린드롬인지 확인하기 - 백준 - 10988(python - 문자열, 구현)

문제 설명 알파벳 소문자로만 이루어진 단어가 주어진다. 이때, 이 단어가 팰린드롬인지 아닌지 확인하는 프로그램을 작성하시오. 팰린드롬이란 앞으로 읽을 때와 거꾸로 읽을 때 똑같은 단어를 말한다. level, noon은 팰린드롬이고, baekjoon, online, judge는 팰린드롬이 아니다. 입력 첫째 줄에 단어가 주어진다. 단어의 길이는 1보다 크거나 같고, 100보다 작거나 같으며, 알파벳 소문자로만 이루어져 있다. 출력 첫째 줄에 팰린드롬이면 1, 아니면 0을 출력한다. 예제 입력, 예제 출력 level 1 baekjoon 0 코드 및 설명 s = input() check_s = "".join( s[i] for i in range(len(s)-1, -1, -1)) if s == check_s: ..

[111일차] 진법 변환 2 - 백준 - 11005(python - 수학, 구현)

문제 설명 10진법 수 N이 주어진다. 이 수를 B진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 사용한다. A: 10, B: 11, ..., F: 15, ..., Y: 34, Z: 35 입력 첫째 줄에 N과 B가 주어진다. (2 ≤ B ≤ 36) N은 10억보다 작거나 같은 자연수이다. 출력 첫째 줄에 10진법 수 N을 B진법으로 출력한다. 예제 입력, 예제 출력 60466175 36 ZZZZZ 코드 및 설명 n, b = map(int, input().split(" ")) answer = [] while True: check = n % b if check >= 10: ord_chr = check+5..

[110일차] -2진수 - 백준 - 2089(python - 수학, 정수론)

문제 설명 -2진법은 부호 없는 2진수로 표현이 된다. 2진법에서는 20, 21, 22, 23이 표현 되지만 -2진법에서는 (-2)0 = 1, (-2)1 = -2, (-2)2 = 4, (-2)3 = -8을 표현한다. 10진수로 1부터 표현하자면 1, 110, 111, 100, 101, 11010, 11011, 11000, 11001 등이다. 10진법의 수를 입력 받아서 -2진수를 출력하는 프로그램을 작성하시오. 입력 첫 줄에 10진법으로 표현된 수 N이 주어진다. 출력 -2진법 수를 출력한다. 예제 입력, 예제 출력 -13 110111 코드 및 설명 n = int(input()) answer = [] while True: if n == 0: answer.append(0) break if n == 1: a..

[109일차] 8진수 2진수 - 백준 - 1212(python - 수학, 구현)

문제 설명 8진수가 주어졌을 때, 2진수로 변환하는 프로그램을 작성하시오. 입력 첫째 줄에 8진수가 주어진다. 주어지는 수의 길이는 333,334을 넘지 않는다. 출력 첫째 줄에 주어진 수를 2진수로 변환하여 출력한다. 수가 0인 경우를 제외하고는 반드시 1로 시작해야 한다. 예제 입력, 예제 출력 314 11001100 코드 및 설명 n = input() o = int(n, 8) print(bin(o).split("0b")[1]) 이 문제는 8진수를 2진수로 바꾸는 것이다. 값을 받고 10진수로 변경하고 다시 이진수로 변경해주면 된다.

[109일차] 2진수 8진수 - 백준 - 1373(python - 수학, 문자열)

문제 설명 2진수가 주어졌을 때, 8진수로 변환하는 프로그램을 작성하시오. 입력 첫째 줄에 N(1 ≤ N ≤ 105)과 S(1 ≤ S ≤ 109)가 주어진다. 둘째 줄에 동생의 위치 Ai(1 ≤ Ai ≤ 109)가 주어진다. 동생의 위치는 모두 다르며, 수빈이의 위치와 같지 않다. 출력 첫째 줄에 주어진 수를 8진수로 변환하여 출력한다. 예제 입력, 예제 출력 11001100 314 코드 및 설명 n = input() d = int(n, 2) print(oct(d).split("0o")[1]) 이 문제는 2진수를 8진수로 바꾸는 문제이다. 2진수를 input으로 받고 10진수로 변환 후 다시 8진수로 변환하면 구할 수 있다.