[단순 폭력] HDU-1407 LTC만큼 높은지 테스트.

2238 단어
제목:
모두가 LTC를 언급하면 탄복할 수 없지만, 만약 경기가 이 문제만 있다면, 나는 너와 그가 절대로 수평선에 있을 것이라고 장담한다!당신의 임무는:
방정식 x^2+y^2+z^2=num의 정수해를 계산합니다. 
Input
입력 데이터는 여러 개의 테스트 실례를 포함하고, 각각의 실례는 한 줄을 차지하며, 10000보다 작은 정수num만 포함한다. 
Output
각 그룹의 테스트 데이터에 대해 x, y,z가 점차적으로 증가하는 순서에 따라 그의 최소 정정수해를 출력하고 각 실례의 출력은 한 줄을 차지하며 문제는 모든 테스트 데이터가 풀릴 것을 보장합니다. 
Sample Input
3
Sample Output
1 1 1
사고방식: 폭력적인 해답을 구하고 가능한 결과를 두루 겪으며 끊임없이 실수를 시도한다.
코드는 다음과 같습니다.
1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include
#include
using namespace std;

int main()
{
    int x,y,z;
    int a;
    bool ans = false; ///    flag;
    while(cin >> a)
    {
        if(ans)
        {
            break;
        }
        else
        {
            for(x = 1; x < 100; x ++) ///  x     ;
            {
                if(ans)
                {
                    break;
                }
                else
                {
                    for(y = 1; y < 100; y ++) ///  y    ;
                    {
                        if(ans) ///  ans       ;
                        {
                            break;
                        }
                        else
                        {
                            for(z = 1; z < 100; z ++) ///  z    ;
                            {
                                int tmp = x*x + y*y + z*z;
                                if(tmp == a)  ///           ;
                                {
                                    cout << x << " " << y << " " << z << endl;
                                    ans = true;   ///flag   , ans   ;
                                }
                            }
                        }
                    }
                }
            }
        }
        ans = false; ///ans      false,       ;
    }
    return 0;
}

감사합니다.

좋은 웹페이지 즐겨찾기