본문 바로가기
반응형

파이썬41

[파이썬]숫자의 제곱 사이클 구하기 이번 포스팅에서는 숫자의 제곱 사이클을 구해보자. 숫자의 제곱 사이클 구하기 문제 정의 입력으로 어떤 수가 주어집니다. (예시: 12) 이 수의 각 자릿수의 제곱을 각각 구합니다. (예시: 1, 4) 이 수들을 모두 더합니다. (예시: 5)한 자리 수가 나오면 그냥 제곱만 하면 됩니다. (예시: 25) 이것을 반복합니다. (예시: 12 - 5 - 25 - 29 ...) 이때, 4처럼 순환하는 경우가 있습니다. (4 - 16 - 37 - 58 - 89 - 145 - 42 - 20 - 4 [무한 반복]) 여기에서 순환할 때 지나가는 수의 개수를 출력합니다. (4에서는 8개[4, 16, 37, 58, 89, 145, 42, 20]) 100번 계산해도 순환되는 것이 나오지 않으면 '100개 이상'을 출력합니다... 2022. 10. 28.
[파이썬]숫자 야구 게임 만들기 이번 포스팅에선 프로그래밍 입문자들이 만힝 접하는 문제인 숫자 야구 게임을 만들기를 해볼 것이다 숫자 야구게임 만들기 문제 정의 숫자 야구게임 방법은 다음과 같다. 게임을 시작할 때 각기 다른 숫자 세 개가 랜덤으로 정해지면, 유저는 그 숫자들과 자리를 맞춰야 한다. 만약 숫자와 자리수를 모두 맞추면 strike 숫자만 맞추면 ball이 된다. 예) 세 자리 랜덤 수: 6 8 2일 때, 유저가 정답을 5 6 2로 입력했을 시 1strike 1ball이 된다. 6 8 3을 입력했을 경우 2strike 0ball이 된다. 6 8 2를 입력했을 경우 3strike가 되어 게임이 종료된다. 기회는 10번이 주어지며 10번의 기회가 끝나면 게임이 종료된다. 랜덤한 숫자 세 개 만들기 import random ra.. 2022. 10. 27.
[파이썬]1~5000 사이의 셀프 넘버들의 합 구하기 이번 포스팅에서는 넥슨의 입사 문제였던 셀프 넘버들의 합을 구하는 문제를 풀어볼 것이다. 셀프 넘버들의 합 구하기 - for문으로 풀기 문제 정의 어떤 자연수 n이 있을 때, d(n)을 n의 각 자릿수 숫자들과 n 자신을 더한 숫자라고 정의한다. 예를 들어 d(91) = 9 + 1 + 91 = 101 이때, n을 d(n)의 제네레이터(generator)라고 한다. 위의 예에서 91은 101의 제네레이터이다. 어떤 숫자들은 하나 이상의 제네레이터를 가지고 있는데, 101의 제네레이터는 91 뿐 아니라 100도 있다. 그런데 반대로, 제네레이터가 없는 숫자들도 있으며, 이런 숫자를 인도의 수학자 Kaprekar가 셀프 넘버(self-number)라 이름 붙였다. 예를 들어 1,3,5,7,9,20,31 은 셀.. 2022. 10. 26.
[파이썬]1~10,000까지 8의 개수 세기 오늘은 1에서 10,000 사이의 숫자들에서 8이 몇번 나오는지 세는 코드를 작성해보자. 1부터 10,000 사이에서 8의 개수 구하기 1부터 10,000까지의 숫자들에서 나타나는 모든 8의 개수를 구해야한다. 다음 예시를 보자. 1~20: 8, 18 → 2개 1~100: 8, 18, 28, 38, 48, 58, 68, 78 ,88, 98 → 11개 8688 안의 8의 개수는 3개, 1878 안의 8의 개수는 2개이다. for문과 count함수 이용하기 count = 0 for i in range(1, 10001): count += str(i).count('8') print(count) #결과 출력 4000 for문과 문자열의 count 함수를 이용하여 쉽게 답을 구할 수 있다. count += str(.. 2022. 10. 24.
[파이썬]1부터 1000까지 각 숫자의 개수 세기 오늘은 코딩 도장에서 많은 추천수를 받은 문제인 1부터 1000까지의 숫자에서 등장하는 숫자들의 개수를 세는 문제를 풀어보자. 각 숫자의 개수 구하기 우선 예시를 보자. 만약 1부터 20까지의 숫자들에서 나오는 숫자들의 개수를 구해보자. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 → 0: 2개, 1: 12개, 2: 3개, 3: 2개, 4: 2개, 5: 2개, 6: 2개, 7: 2개, 8: 2개, 9: 2개 155에는 1이 1개, 5가 2개 있는 셈이다. 각 숫자들이 나오는 횟수을 합해보자. for 반복문 단순하고 간단하게 풀어봤다. nums = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] for i in range(1, 1001): for j i.. 2022. 10. 23.
[파이썬]짝수와 홀수 정리하기 이번 포스팅에서는 일련의 숫자들을 받아 홀수와 짝수를 받아 정렬하여 출력하는 코드를 작성해보자. 홀수와 짝수 정렬하기 다만 홀수와 짝수의 개수가 다를 경우 숫자를 같게 맞추며 홀수는 오름차순, 짝수는 내림차순으로 번갈아가면서 출력을 해야 한다. 아래 예시를 보자 1 6 3 5 2 7 4 → 1 6 3 4 5 2 홀수는 1 3 5 7, 짝수는 6 2 4가 들어왔는데, 짝수와 홀수의 개수가 맞지 않아 짝수처럼 3개로 맞춘 후 홀수는 오름차순 짝수는 내림차순으로 번갈아가면서 출력이 돼야 한다. 입력값 받기 user_input = input("숫자들을 공백없이 입력하세요> ") nums_list = set([int(x) for x in '_'.join(user_input).split('_')]) print(nu.. 2022. 10. 22.
반응형