SW Expert Academy
(SWEA c++)5688. 세제곱근을 찾아라
naeunchan
2020. 11. 16. 11:12
728x90
반응형
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
N의 범위가 크기 때문에 여유롭게 unsigned long long으로 풀었다.
for문을 통해 1 ~ ((i * i * i) <= num) 일 때까지 반복한다.
세제곱이 num과 같으면 break; 하여 답을 찾으면 된다.
#include <iostream>
#include <cmath>
using namespace std;
int main(void)
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int t;
cin >> t;
for(int tc = 1; tc <= t; tc++)
{
unsigned long long num, ans = 0;
cin >> num;
for(unsigned long long i = 1; i * i * i <= num; i++)
{
if(i * i * i == num)
{
ans = i;
break;
}
}
cout << "#" << tc << " ";
if(ans == 0)
cout << -1 << endl;
else
cout << ans << endl;
}
return 0;
}
728x90
반응형