Problem:
問題1

　三角形の形は辺の長さで決まる．
順番に３つの正整数が与えられたとき，
辺の長さがそれらの値と一致する三角形が存在するかどうかを調べ，
存在するなら鋭角三角形，直角三角形，鈍角三角形のいずれかを判定し，
次の入力へ進む．
三角形が存在しないとき，
それまでに入力された，三角形，直角三角形，鋭角三角形，鈍角三角形の
個数を空白で区切って出力し，
それ以降の入力は無視して終了する．
入力の中には必ず三角形が存在しないようなものがある
と仮定してよい.
入力の行数は判らないが各行には３つの正整数が空白で区切って書かれている．
ただし，各整数は100 以下とする.

出力ファイルにおいては，
出力の最後の行にも改行コードを入れること．

入出力例

入力例１

3 4 5
2 1 2
6 3 4
1 1 1
1 2 3

4 1 2 1

入力例２

3 4 5
2 1 2
6 3 4
1 2 3
1 1 1

出力例２

3 1 1 1

問題文と自動審判に使われるデータは、情報オリンピック日本委員会が作成し公開している問題文と採点用テストデータです。

Solution in C# (judge verdict: Accepted)

using System;
using System.IO;
using System.Linq;
using System.Collections.Generic;
using System.Text;

public class Program
{

    public void Proc()
    {
        string inpt = Reader.ReadLine();
        int chokkaku = 0;
        int eikaku = 0;
        int donkaku = 0;
        while(inpt != null) {

            int[] numList = inpt.Split(' ').Select(a => int.Parse(a)).OrderByDescending(a=>a).ToArray();

            if(numList[0] >= numList[1] + numList[2]) {
                Console.WriteLine((chokkaku + eikaku + donkaku) + " " + chokkaku + " " + eikaku + " " + donkaku);
                return;
            }

            int sya = numList[0] * numList[0];
            int sonota = numList[1] * numList[1] + numList[2] * numList[2];

            if(sya > sonota) {
                donkaku++;
            } else if(sya < sonota) {
                eikaku++;
            } else {
                chokkaku++;
            }

            inpt = Reader.ReadLine();
        }
        Console.WriteLine((chokkaku + eikaku + donkaku) + " " + chokkaku + " " + eikaku + " " + donkaku);

    }




    public class Reader
    {
        static StringReader sr;
        public static bool IsDebug = false;
        public static string ReadLine()
        {
            if (IsDebug)
            {
                if (sr == null)
                {
                    sr = new StringReader(InputText.Trim());
                }
                return sr.ReadLine();
            }
            else
            {
                return Console.ReadLine();
            }
        }
        private static string InputText = @"



3 4 3
7 5 3
12 13 5
3 4 6
4 3 8
3 4 5


";
    }

    public static void Main(string[] args)
    {
#if DEBUG
        Reader.IsDebug = true;
#endif
        Program prg = new Program();
        prg.Proc();
    }
}