문제 11365번: !밀비 급일 당신은 길을 가다가 이상한 쪽지를 발견했다. 그 쪽지에는 암호가 적혀 있었는데, 똑똑한 당신은 암호가 뒤집으면 해독된다는 것을 발견했다. 이 암호를 해독하는 프로그램을 작성하시오. www.acmicpc.net 코드 My answer import sys input=sys.stdin.readline while(1): code=input().rstrip() if(code=='END'): break print(code[::-1]) Another answer while(s:=input())!='END': print(s[::-1]) 풀이 문자열은 [::-1]을 해주면 거꾸로 출력한다는 것을 기억하자! + sys.stdin.readline()은 맨 마지막에 개행문제도 함께들어오기 때문..
코딩테스트/백준[Python]
백준 파이썬 코딩테스트 문제 풀이문제 3029번: 경고 첫째 줄에 현재 시간이 hh:mm:ss 형식으로 주어진다. (시, 분, 초) hh는 0보다 크거나 같고, 23보다 작거나 같으며, 분과 초는 0보다 크거나 같고, 59보다 작거나 같다. 둘째 줄에는 나트륨을 던질 시간 www.acmicpc.net 코드 My answer import sys input=sys.stdin.readline current=input() throw=input() if(current==throw): print("24:00:00") else: current=int(current[0:2])*3600+int(current[3:5])*60+int(current[6:8]) throw=int(throw[0:2])*3600+int(throw[3:5])*60+int(thro..
문제 18511번: 큰 수 구성하기 첫째 줄에 N, K의 원소의 개수가 공백을 기준으로 구분되어 자연수로 주어진다. (10 ≤ N ≤ 100,000,000, 1 ≤ K의 원소의 개수 ≤ 3) 둘째 줄에 K의 원소들이 공백을 기준으로 구분되어 주어진다. 각 www.acmicpc.net 코드 My answer import sys from itertools import permutations input=sys.stdin.readline n,k=map(int,input().split()) num=list(input().split())*len(str(n)) k=len(str(n)) result=[] for i in range(1,k+1): for j in permutations(num,i): tmp=int(''...
문제 5568번: 카드 놓기 예제 1의 경우 상근이는 11, 12, 21, 112, 121, 122, 212를 만들 수 있다. www.acmicpc.net 코드 My answer import sys from itertools import permutations input=sys.stdin.readline n=int(input()) k=int(input()) card,result,tmp=[],set(),"" for i in range(n): card.append(int(input())) for i in permutations(card,k): for j in i: tmp+=str(j) result.add(int(tmp)) tmp="" print(len(result)) Another answer from it..
[Python] 백준 #1912- 연속합 문제 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net changsroad.tistory.com 재풀이하여 올렸습니다.~ 문제 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 코드 My answer(시간초과) import sys input=sys.stdin.readline n=int(input()..
문제 2407번: 조합 n과 m이 주어진다. (5 ≤ n ≤ 100, 5 ≤ m ≤ 100, m ≤ n) www.acmicpc.net 코드 My answer import sys input=sys.stdin.readline n,m=map(int,input().split()) a,b=1,1 if(n-m>m):m=n-m for i in range(m): a*=n n-=1 for i in range(m): b*=m m-=1 print(a//b) import sys input=sys.stdin.readline n,m=map(int,input().split()) dp=[] for i in range(n+1): dp.append([0 for j in range(i+1)]) dp[1][0],dp[1][1]=1,1 fo..