Python 298

[파이썬/python] 게임 장비 강화 시스템

결과 1) 강화도전 2) 강화포기 및 다른 번호 선택 시 코드 복사코드 import random count=0 while(1): menu=int(input("\n\n메뉴 1)강화도전 2)강화포기 : ")) if menu==1: rd=random.randint(1,100) if count==0: print("1강 성공 확률 90%\n") if rd>=10: print("1강 강화 성공\n") count=count+1 else: print("강화 실패 . . .\n") elif count==1: print("2강 성공 확률 70%\n") if rd>=30: print("2강 강화 성공\n") count=count+1 else: print("강화 실패 . . .\n") elif count==2: print("..

[파이썬/python]백준 10870번 피보나치 수 5

문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 n이 주어진다. n은 20보다 작거나 같은 자연수 또는 0이다. ex) 10 출력 첫째 줄에 n번째 피보나치 수를 출력한다. ex) 55 코드 def fib(n): if n==0: return 0 elif ..

[파이썬/python]백준 10926번 ??!

문제 준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때, 놀람을 표현하는 프로그램을 작성하시오. 입력 첫째 줄에 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어진다. 아이디는 알파벳 소문자로만 이루어져 있으며, 길이는 50자를 넘지 않는다. ex) joonas 출력 첫째 줄에 준하의 놀람을 출력한다. 놀람은 아이디 뒤에 ??!를 붙여서 나타낸다. ex) joonas??! 코드 ch=input('') print(ch+"??!")

[파이썬/python]백준 2475번 검증수

문제 컴퓨터를 제조하는 회사인 KOI 전자에서는 제조하는 컴퓨터마다 6자리의 고유번호를 매긴다. 고유번호의 처음 5자리에는 00000부터 99999까지의 수 중 하나가 주어지며 6번째 자리에는 검증수가 들어간다. 검증수는 고유번호의 처음 5자리에 들어가는 5개의 숫자를 각각 제곱한 수의 합을 10으로 나눈 나머지이다. 예를 들어 고유번호의 처음 5자리의 숫자들이 04256이면, 각 숫자를 제곱한 수들의 합 0+16+4+25+36 = 81 을 10으로 나눈 나머지인 1이 검증수이다. 입력 첫째 줄에 고유번호의 처음 5자리의 숫자들이 빈칸을 사이에 두고 하나씩 주어진다. ex) 0 4 2 5 6 출력 첫째 줄에 검증수를 출력한다. ex) 1 코드 n=list(map(int, input('').split())..

[파이썬/python] 피보나치 (반복, 순환) 코드

결과 코드 복사코드 fibolist={0:0, 1:1} def fib1(n): #반복 if not n in fibolist: fibolist[n]=fib1(n-1)+fib1(n-2) return fibolist[n] def fib2(n): #순환 if n==0: return 0 elif n==1: return 1 else: return fib2(n-1)+fib2(n-2) while(1): menu=int(input("\n메뉴 1)반복피보나치 2)순환피보나치 3)종료 : ")) if menu==1: n1=int(input("정수를 입력하시오 : ")) print("반복 피보나치 ",n1,"!= ",fib1(n1)) print("\n") elif menu==2: n2=int(input("정수를 입력하시오 :..

[파이썬/python]백준 11399번 ATM

문제 인하은행에는 ATM이 1대밖에 없다. 지금 이 ATM앞에 N명의 사람들이 줄을 서있다. 사람은 1번부터 N번까지 번호가 매겨져 있으며, i번 사람이 돈을 인출하는데 걸리는 시간은 Pi분이다. 사람들이 줄을 서는 순서에 따라서, 돈을 인출하는데 필요한 시간의 합이 달라지게 된다. 예를 들어, 총 5명이 있고, P1 = 3, P2 = 1, P3 = 4, P4 = 3, P5 = 2 인 경우를 생각해보자. [1, 2, 3, 4, 5] 순서로 줄을 선다면, 1번 사람은 3분만에 돈을 뽑을 수 있다. 2번 사람은 1번 사람이 돈을 뽑을 때 까지 기다려야 하기 때문에, 3+1 = 4분이 걸리게 된다. 3번 사람은 1번, 2번 사람이 돈을 뽑을 때까지 기다려야 하기 때문에, 총 3+1+4 = 8분이 필요하게 된다..

[파이썬/python]백준 5532번 방학 숙제

문제 상근이는 초등학교에 다닐 때, 방학 숙제를 남들보다 먼저 미리 하고 남은 기간을 놀았다. 방학 숙제는 수학과 국어 문제 풀기이다. 방학은 총 L일이다. 수학은 총 B페이지, 국어는 총 A페이지를 풀어야 한다. 상근이는 하루에 국어를 최대 C페이지, 수학을 최대 D페이지 풀 수 있다. 상근이가 겨울 방학동안 숙제를 하지 않고 놀 수 있는 최대 날의 수를 구하는 프로그램을 작성하시오. 입력 한 줄에 하나씩 총 다섯 줄에 걸쳐 L, A, B, C, D가 주어진다. (2 ≤ L ≤ 40, 1 ≤ A, B ≤ 1000, 1 ≤ C, D ≤ 100) 항상 방학 숙제를 방학 기간내에 다 할 수 있는 경우만 입력으로 주어진다. ex) 20 25 30 6 8 15 32 48 4 6 출력 첫째 줄에 상근이가 놀 수 ..