C++/백준 C++

C++ 1009 분산 처리 [구현]

CE : 하랑 2024. 11. 6. 15:02

 

 

 

 

 

(1) std::pow(a,b) -> 연산 후 

(2) % 10으로 나눠 나온 나머직 값으로 마지막 데이터 처리되는 컴퓨터 번호를 출력 시도

 

#include <iostream>
#include <math.h>



int main()
{
	int T;

	std::cin >> T;

	for (int i = 0; i < T; i++)
	{
		int a, b;
		std::cin >> a >> b;

		long long num = std::pow(a, b);

		long long result = num % 10;
		
		if (result == 0)
		{
			std::cout << 10 << "\n";
		}
		else
		{
			std::cout << result<<"\n";
		}
	}
}

 

->  실패

 

 

-> 범위 벗어남

 

-> 1의 자리 수만 제곱 계산해서  체크

#include <iostream>
#include <math.h>



int main()
{
	int T;

	std::cin >> T;

	

	for (int i = 0; i < T; i++)
	{
		int a, b;

		std::cin >> a >> b;

		int num = 1;
		// 1의 자리수만 제곱
		for (int j = 0; j < b; j++)
		{
			num = (num * a) % 10;
		}
		
		if (num == 0)
		{
			std::cout << 10 << "\n";
		}
		else
		{
			std::cout << num<<"\n";
		}
	}
}