코딩테스트/백준[Python]

백준 파이썬 코딩테스트 문제 풀이
[접미사 배열]-11656번 11656번: 접미사 배열 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000보다 작거나 같다. www.acmicpc.net My answer origin=input() tmp=['0']*len(origin) for i in range(len(origin)): tmp[i]=origin[i:] tmp.sort() for i in tmp: print(i) Another answer s=input() print(*sorted(s[n:]for n in range(len(s)))) 더보기 나랑 같은 방법인데 훨씬 깔끔해보이는 방법이다..
[ROT13]-11655번 11655번: ROT13 첫째 줄에 알파벳 대문자, 소문자, 공백, 숫자로만 이루어진 문자열 S가 주어진다. S의 길이는 100을 넘지 않는다. www.acmicpc.net My answer s=input() for i in range(len(s)): if(s[i].isalpha()==1): tmp=ord(s[i])+13 if('a'90): tmp-=26 s=s[:i]+chr(tmp)+s[i+1:] print(s) Another answer import codecs print(codecs.encode(input(),"rot13")) -------------------------------------- def f(c): i=ord(c) if i>96:return chr((i-84..
[문자열 분석]-10820번 10820번: 문자열 분석 문자열 N개가 주어진다. 이때, 문자열에 포함되어 있는 소문자, 대문자, 숫자, 공백의 개수를 구하는 프로그램을 작성하시오. 각 문자열은 알파벳 소문자, 대문자, 숫자, 공백으로만 이루어져 있 www.acmicpc.net My answer import sys result=[0]*4 while(1): try: tmp=sys.stdin.readline().rstrip('/n') if(tmp=""): break for i in tmp: if('a'
[알파벳 찾기]-10809번 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net My answer from string import ascii_lowercase alphabet_list = list(ascii_lowercase) s=input() for i in alphabet_list: if(i in s): print(s.find(i),end=" ") else: print(-1,end=" ") Another answer print(*map(input().find,map(chr,range(97,123)..
[알파벳 개수]-10808번 10808번: 알파벳 개수 단어에 포함되어 있는 a의 개수, b의 개수, …, z의 개수를 공백으로 구분해서 출력한다. www.acmicpc.net My answer from collections import Counter from string import ascii_lowercase import sys alphabet_list = list(ascii_lowercase) tmp=sys.stdin.readline().rstrip() for i in alphabet_list: if(i in Counter(tmp)): print(Counter(tmp)[i],end=" ") else: print(0,end=" ") Another answer print(*map(input().coun..
[덱]-10866번 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net My answer import sys n=int(sys.stdin.readline()) tmp=[] for _ in range(n): deck=[] deck=sys.stdin.readline().split() if(deck[0]=="push_front"): tmp=[int(deck[1])]+tmp elif(deck[0]=="push_back"): tmp.append(int(deck[1])) elif(deck[0]=="front"..
창빵맨
'코딩테스트/백준[Python]' 카테고리의 글 목록 (23 Page)