코딩 및 기타

오일러 1056,1057,4039

정지홍 2023. 1. 5. 16:17

#1056 문자 찾기Ⅲ : 오일러OJ (euleroj.io)

#첫줄은 단어의 수와 찾는 문자열
#두번째줄부터는 단어들 입력
#찾는 문자열로 시작하는 단어들을 출력
cnt=0
x,st=input().split()
x=int(x)
st=st.lower()
for i in range(0,x):
    y=input()
    y=y.lower()
    if y[0:len(st)]==st:
        print(y)
        cnt+=1


if cnt==0:
    print("NOT FOUND")

 

#1057 문자열 소트 : 오일러OJ (euleroj.io)

x=int(input())  #입력받을 단어수
arr=[]  #단어를 저장할 리스트

for i in range(0,x):
    y=input()   #단어 입력받고
    y=y.lower() #소문자 처리하고
    arr.append(y)   #리스트에 추가

#배열 한번돌면서 
for i in range(0,x):
    for j in range(i+1,x):
        if arr[i]>arr[j]:
            tmp=arr[i]
            arr[i]=arr[j]
            arr[j]=tmp

for i in range(0,x):
    print(arr[i])

 

#4309 Fibonacci Numbers : 오일러OJ (euleroj.io) ----------->오답이라는데 테스트케이스를 아무리 바꿔도 맞는답인데???

#피보나비치인데 수가 공백없이 나옴
#첫번째 수는 start, 두번째는 start+1, third=k
#output:피보나비치수를 공백없이 출력시 k번째 오는 수
# 1, 1, 2, 3, 5, 8, 13, 21, 34,55,89 …
x,y,k=map(int,input().split())

numStr=""
numStr+=str(x)
numStr+=str(y)
while(len(numStr)<k):

    if x<=y:
        x=x+y
        numStr+=str(x)
    else:
        y=x+y
        numStr+=str(y)
#print(numStr)
print(int(numStr[k-1]))