본문 바로가기
백준 알고리즘

파이썬) 백준 알고리즘 | 11947번 : 이런 반전이

by 코딩새내기_ 2022. 3. 1.

https://www.acmicpc.net/problem/11947

 

11947번: 이런 반전이

첫째 줄에는 테스트 케이스의 개수를 나타내는 하나의 자연수 T가 주어집니다. 다음 T개의 각 줄에는 하나의 양의 정수 N이 주어집니다. (1 ≤ N ≤ 1,000,000,000)

www.acmicpc.net

백준 11947 '이런 반전이' 문제입니다.

일단 함수로 사랑스러움을 구하는 방법을 구현하였고

주어진 값에서 한 자리수를 높이고 반을 구합니다.

이 숫자를 Large라고 하겠습니다.

ex) 7이 주어졌다면 10으로 만들고 5가 됩니다.

만약 주어진 값이 이 수보다 크다면 love(Large)를 구했고

다른 경우에는 love(주어진 수)를 구했습니다.

import sys
input = sys.stdin.readline

t = int(input())
def love(m):
    num = str(m)
    lov = str()
    for s in num:
        lov += str(9-int(s))
    result = m * int(lov)
    return result

for _ in range(t):
    n = input().strip()
    Large = 10 ** (len(n)) // 2
    if int(n) > Large:
        print(love(Large))
    else:
        print(love(int(n)))

댓글