본문 바로가기
알고리즘/백준 solved.ac PS

[백준][solved.ac][Bronze 3][Python] 1009번 : 분산처리

by 빛밤하늘 2021. 6. 24.
반응형

밑의 링크는 백준에서의 문제 링크입니다.

 

1009번: 분산처리

입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 정수 a와 b가 주어진다. (1 ≤ a < 100, 1 ≤ b < 1,000,000)

www.acmicpc.net

 

 

 

 

 

 

 

 

파이썬 코드와 결과입니다.

# readline을 사용하기 위해 import합니다.
from sys import stdin


# 첫 줄에는 테스트 케이스의 개수 T를 입력합니다.
# 정수형으로 변환합니다.
T = int(stdin.readline())

# 테스트 케이스의 개수 T만큼 반복합니다.
for test_case_idx in range(T):
    # 정수 a, b를 공백으로 구분해 입력합니다.
    # 1 <= a < 100
    # 1 <= b < 1,000,000
    # 각각 정수형으로 변환합니다.
    a, b = map(int, stdin.readline().split(' '))
    # a^b의 마지막 숫자를 저장하는 변수를 선언합니다.
    last_number = pow(a, b, 10)

    # 마지막 숫자가 0이라면
    if last_number == 0:
        # 10번 컴퓨터가 처리하므로 10을 출력합니다.
        print(10)
    # 마지막 숫자가 0외의 숫자라면
    else:
        # 그 번호에 해당하는 컴퓨터가 처리하므로 마지막 숫자를 그대로 출력합니다.
        print(last_number)

결과

 

Bronze 3은 알고리즘 문제들 중에서 매우 쉬운 편에 속하는 문제입니다.

그런데 이렇게 계속 시간 초과틀렸습니다가 뜨는 경우는 처음입니다. 매우 창피하네요...

심지어 못 풀어서 결국에는 질문 검색에서 고수분들의 조언들을 봤습니다.

 

맞았습니다 결과를 보고 나서 다른 사람들의 파이썬 결과들도 보니

pow를 쓰지 않고도 맞춘 고수분들도 많았습니다.

 

아직 실력이 많이 미숙한 것이 부끄러워지는 문제였습니다...

 

 

 

※ 궁금한 부분, 이상한 점 및 오타는 댓글에 부탁드립니다.

※ 더 효율적이고 빠른 정답을 환영합니다.

반응형

댓글