[백준_python] 팩토리얼 || 10872
·
🎯PS
www.acmicpc.net/problem/10872 10872번: 팩토리얼0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.www.acmicpc.net#팩토리얼 from math import factorial n = int(input()) print(factorial(n))
[백준_python] 직각삼각형 || 4153
·
🎯PS
www.acmicpc.net/problem/4153 4153번: 직각삼각형입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.www.acmicpc.net#직각삼각형 while True: a = list(map(int, input().split(' '))) if a == [0, 0, 0]: break a.sort() if a[2]**2 == a[0]**2 + a[1]**2: print("right") else: print("wrong")while로 무한 반복해주고, 받은 문자열을 숫자형으로 바꾸고 리스트로 묶어주었다. 그 후 그 리스트가 [0, 0, 0]이라면 break! 또는 sum..
[백준_python] 네 번째 점 || 3009
·
🎯PS
www.acmicpc.net/problem/3009 3009번: 네 번째 점세 점이 주어졌을 때, 축에 평행한 직사각형을 만들기 위해서 필요한 네 번째 점을 찾는 프로그램을 작성하시오.www.acmicpc.net처음에는 점끼리 x가 같으면 빼줘서 y의 길이를 구해주고 해서 길이로 해주는 건가? 싶다가도 뭔가 표현을 어떻게 해주어야 할 지 떠오르지 않아서 패스,, 그 다음엔 x와 y가 둘다 같지 않은 점끼리 대각선이니까 길이를 구해줘서 해주는 건가? 하다가 뭐 이 방법으로도 가능할 것 같긴 한데,, 바로 count함수로 중복되지 않은 값, 즉 하나만 있는 수를 좌표로 찍어주면 되는 것이였다. set()을 이용해서 중복된 값을 없애주기도 하던데,, 이거로 풀어볼 수도 있으려나..? 지금은 마땅히 떠오르지는 ..
[백준_python] 큰 수 A + B || 10757
·
🎯PS
www.acmicpc.net/problem/10757 10757번: 큰 수 A+B두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.www.acmicpc.net#큰 수 A+B a, b = map(int, input().split(' ')) print(a+b)메모리 초과가 될 거라고 생각했는데, 그렇지 않고 맞았습니다! 라는 결과를 보게 되어서 읭스러웠지만 감사했다ㅎㅎ(?)
[백준_python] 설탕 배달 || 2839
·
🎯PS
www.acmicpc.net/problem/2839 2839번: 설탕 배달상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그www.acmicpc.net18 = 3 x 6 = 5 x 3 + 3 x 1 (4회) 4 ⇒ -1 9 = 3 x 3 (3회) 11 = 5 x 1 + 3 x 2 (3회) 27 = 5 x 3 + 3 x 4 (7회) 32 = 5 x 4 + 3 x 4 (8회) 32(n)에서 5x6=30(num)을 빼준 나머지(mod = 2)가 3의 배수가 아니면 5를 빼준다. (30 → 25)(25 → 20) 나머지(mod)가 3의 배수가 될 때까지 반복 후, 32 - 20(n..
[백준_python] 달팽이는 올라가고 싶다, 부녀회장이 될테야 || 2869, 2775
·
🎯PS
1. 달팽이는 올라가고 싶다. www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B = v: cnt += 1 break meter -= b cnt += 1 print(cnt)하면서도 이미 예제 3에서 숫자가 크게 들어가는 것을 알고 있었기에 이건 분명 시간초과가 뜰 것 같았다. while문을 사용하지 않고, 입력 받은 수대로 바로 값을 출력해야 한..
[백준_python] 벌집, 분수찾기 || 2292, 1193
·
🎯PS
1. 벌집www.acmicpc.net/problem/2292 2292번: 벌집위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌www.acmicpc.net#벌집 n = int(input()) i = 1 x = 2 y = 8 while True: if n == 1: cnt = 1 break if n in range(x, y): cnt = i + 1 break i += 1 x = y y = (6 * i) + x print(cnt)최소 개수의 방을 지나서 갈 때, 1개) 1 2개) 2~7 (6개) 3개) 8~19 (6x2개) 4개) 20~37 (6x3개 = 37 - 20 ..
[백준_python] 다이얼, 손익분기점 || 5622, 1712
·
🎯PS
1. 다이얼www.acmicpc.net/problem/5622 5622번: 다이얼첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다.www.acmicpc.net#다이얼 S = input() time = 0 dial = ['ABC', 'DEF', 'GHI', 'JKL', 'MNO', 'PQRS', 'TUV', 'WXYZ'] for i in S: for j in dial: if i in j: time += dial.index(j) + 3 print(time)하 일단 for문안으로 if i == "A" 로 or로 하나하나 해주려니 너무너무 길어졌다. 그래서 select같은 게 없나 고민해보다가, 다른 분이 위에 코드처럼 dial 리스트를 구현하고 in..
[백준_python] reverse( ), reversed( ), join() || 1152, 2908
·
🎯PS
reverse( ): list 자료형에서 제공하는 함수, 값 반환 Xreversed( ): 내장 함수, 리스트 튜플, 문자열에 사용 가능, 객체 반환 join( ): 리스트의 문자열을 합친다. "".join( list ) 1. 단어의 개수(1152) www.acmicpc.net/problem/1152 1152번: 단어의 개수첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 www.acmicpc.net#단어의 개수 s = list(input().split()) print(len(s))2. 상수 www.acmicpc.net/problem/2908 2908번: 상수..
[백준_python] 함수, not in || 15596, 4673
·
🎯PS
1. 정수 N개의 합 15596번: 정수 N개의 합 (acmicpc.net) 15596번: 정수 N개의 합C++17, Java 8, Python 3, C11, PyPy3, C99, C++98, C++11, C++14, Python 2, PyPy2, Go, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang)www.acmicpc.net#정수 N개의 합 def solve(a): ans = 0 for i in range(len(a)): ans += a[i] return ans뭔가를 출력하는 문제가 아니라 단순히 함수를 구현해봐라~~하는 문제였다. 다른 문제들을 풀 때 함수를 직접 구현해서 풀어본 문제는 한 번밖에..