#include <stdio.h>
#include <math.h>

/* 一辺の長さの最大値 */
#define MAX_NUM 50000

/* 関数のプロトタイプ宣言 */
int is_heron(int, int, int);

int main(){
  int a,b,c,s;

  /* a<=b<=c を仮定して，総当り */
  /* 三角形の成立条件 a+b>c に注意する */
  for(c=1; c<MAX_NUM; c++){
    for(b=1; b<=c; b++){
      for(a=c-b+1; a<=b; a++){
        /* (a,b,c)がヘロンの三角形かどうか確認 */
        if(s=is_heron(a,b,c)){
      if ((b-a==1) && (c-b==1)) //連続する整数値か？
        printf("S(%5d, %5d, %5d) = %d\n", a,b,c,s);
        }
      }
    }
  }
  return 0;
}

/* (a,b,c)がヘロンの三角形かどうかを返す関数 */
/* ヘロン三角形なら1，そうでないなら0を返す */
int is_heron(int a, int b, int c){
  /*ヘロンの公式により面積を求める */
  double s = (a+b+c)/2.0;
  double area = sqrt(s*(s-a)*(s-b)*(s-c));

  /* 面積が整数かどうかの判定 */
  if(ceil(area) - floor(area) == 0) return floor(area);
  else return 0;
}
