トップページに戻る    次のC#のサンプルへ    前のC#のサンプルへ

Problem9 a+b+c=1000となるピタゴラス数

問題

ピタゴラスの3つ組(ピタゴラスの定理を満たす自然数)とはa<b<cで
a*a + b*b = c*c を満たす数の組である

例えば 3*3+4*4 = 9+16 = 25 = 5*5である

a+b+c=1000となるピタゴラスの3つ組が1つだけ存在する。このa,b,cの積を計算しなさい


ソース

using System;

class Program
{
    static void Main()
    {
        for (int a = 1; a <= 1000; a++) {
            for (int b = a; b <= 1000; b++) {
                int c = 1000 - a - b;
                if (a * a + b * b == c * c) {
                    var sb = new System.Text.StringBuilder();
                    sb.AppendFormat("{0}*{0}+{1}*{1}={2}*{2}={3}",
                        a, b, c, a * a + b * b);
                    Console.WriteLine(sb.ToString());
                    return;
                }
            }
        }
    }
}


実行結果

200*200+375*375=425*425=180625


解説

ナイーブに解いてます。