-
백준 1009번 분산처리알고리즘 2022. 5. 8. 21:51
https://www.acmicpc.net/problem/1009
1009번: 분산처리
입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 정수 a와 b가 주어진다. (1 ≤ a < 100, 1 ≤ b < 1,000,000)
www.acmicpc.net
위 문제의 풀이입니다.
#include <iostream> int main() { int t, b, a; std::cin >> t; for (int i = 0; i < t; i++) { std::cin >> a >> b; if (a%10==0) //a가 10의 배수일 경우 무조건 10번째 컴퓨터 { std::cout << 10<<"\n"; } else { int z = 1; for (int x = 0; x < b % 4 + 4; x++) // 결국 끝 자리수는 4단위로 반복됨 0방지를 위해 4더함 { z *= a%10; //z에 a%10을 곱하는 이유는 오버플로우 방지 } std::cout << z % 10 << "\n"; } } }
위의 추가적인 설명으로는
1= 1, 1, 1, 1, 1
2= 2, 4, 8, 16, 32
3= 3, 9, 27, 81 ,243
.
.
.
8= 8, 64, 512, 4,096, 32,768
9= 9, 81, 729, 6,561, 59,049
4단위로 뒷자리가 반복됨
실행결과 '알고리즘' 카테고리의 다른 글
백준 1018_체스판 다시 칠하기 (0) 2022.05.20 백준 1010 다리 놓기 (0) 2022.05.08 백준 2775번 부녀회장이 될테야 (0) 2022.04.06 백준 2869번 달팽이는 올라가고 싶다 (0) 2022.03.23 백준 2839번 설탕 배달 (0) 2022.03.23