※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 27621번 문제인 Sum of Three Cubes이다.
문제는 아래 링크를 확인하자.
https://www.acmicpc.net/problem/27621
27621번: Sum of Three Cubes
Recently, a mathematician has just found three cube numbers that sum up to 42 using over a million hours of computing time. With this breakthrough, we have found three cube numbers that sum up to all non-negative integers less than 100 if it is possible to
www.acmicpc.net
문제에 제시된 각 0 이상 50 미만의 정수 N을 세 정수의 세제곱의 합으로 나타내는 방법의 예시를 그대로 출력해 문제를 해결하자.
N의 범위가 충분히 작으므로, 하드코딩으로 문제를 해결할 수 있을 것이다. 파싱하는 코드를 작성하거나 하는 방법 등으로 문제를 해결하자.
아래는 제출한 소스코드이다.
#include <iostream>
using namespace std;
int N;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> N;
switch (N) {
case 0: cout << "0 0 0";
break;
case 1: cout << "0 0 1";
break;
case 2: cout << "0 1 1";
break;
case 3: cout << "1 1 1";
break;
case 4: cout << "0";
break;
case 5: cout << "0";
break;
case 6: cout << "-1 -1 2";
break;
case 7: cout << "0 -1 2";
break;
case 8: cout << "0 0 2";
break;
case 9: cout << "0 1 2";
break;
case 10: cout << "1 1 2";
break;
case 11: cout << "-2 -2 3";
break;
case 12: cout << "7 10 -11";
break;
case 13: cout << "0";
break;
case 14: cout << "0";
break;
case 15: cout << "-1 2 2";
break;
case 16: cout << "-511 -1609 1626";
break;
case 17: cout << "1 2 2";
break;
case 18: cout << "-1 -2 3";
break;
case 19: cout << "0 -2 3";
break;
case 20: cout << "1 -2 3";
break;
case 21: cout << "-11 -14 16";
break;
case 22: cout << "0";
break;
case 23: cout << "0";
break;
case 24: cout << "-2901096694 -15550555555 15584139827";
break;
case 25: cout << "-1 -1 3";
break;
case 26: cout << "0 -1 3";
break;
case 27: cout << "0 0 3";
break;
case 28: cout << "0 1 3";
break;
case 29: cout << "1 1 3";
break;
case 30: cout << "-283059965 -2218888517 2220422932";
break;
case 31: cout << "0";
break;
case 32: cout << "0";
break;
case 33: cout << "8866128975287528 -8778405442862239 -2736111468807040";
break;
case 34: cout << "-1 2 3";
break;
case 35: cout << "0 2 3";
break;
case 36: cout << "1 2 3";
break;
case 37: cout << "0 -3 4";
break;
case 38: cout << "1 -3 4";
break;
case 39: cout << "117367 134476 -159380";
break;
case 40: cout << "0";
break;
case 41: cout << "0";
break;
case 42: cout << "-80538738812075974 80435758145817515 12602123297335631";
break;
case 43: cout << "2 2 3";
break;
case 44: cout << "-5 -7 8";
break;
case 45: cout << "2 -3 4";
break;
case 46: cout << "-2 3 3";
break;
case 47: cout << "6 7 -8";
break;
case 48: cout << "-23 -26 31";
break;
case 49: cout << "0";
break;
}
}
728x90
'BOJ' 카테고리의 다른 글
[BOJ 25335 // C++] Gravity Hackenbush (0) | 2023.03.05 |
---|---|
[BOJ 1983 // C++] 숫자 박스 (0) | 2023.03.05 |
[BOJ 27627 // C++] Splitology (0) | 2023.03.04 |
[BOJ 27708 // C++] Antisort (0) | 2023.03.04 |
[BOJ 20877 // C++] Minigolf (0) | 2023.03.04 |