プロジェクトオイラー 問題9
久しぶりです!先週分に関しては、大学が始まって一週目ということもあり、バリ忙しかったです...
遅れましたが、書きます!
今回の問題↓
Problem 9 - PukiWiki
<アルゴリズム>
・素直に問題通りにプログラムを組んでいく。
・計算量を減らすためにa、b、cのとりうる値で制限する。
・<ソースコード>
#include <stdio.h> #include <time.h> int main(void){ int a, b, c;//問題中の三つの変数 clock_t start_clock, end_clock; start_clock = clock(); for(a = 1; a < 333; a++)//条件からaは333より小さいことが考えられる for(b = a + 1; b < 500; b++){//条件より、bは500よりも小さいことが考えられる c = 1000 - a - b; if (c > b && a * a + b * b == c * c) printf("求める解は %d \n", a * b * c); } end_clock = clock(); printf("かかった時間%f秒\n", (double)(end_clock - start_clock) / CLOCKS_PER_SEC); return 0; }
<実行結果>
求める解は 31875000 かかった時間0.001000秒
クリア!