2009-02-26 19:31:37來源不明

95全國資訊學科能力決賽 1. 影像像素轉換問題

題目好複雜,看不懂ODO,當懂得時候 就簡單啦!!
原本來以為要加上誤差(1e-12)之類的作運算...

/************************************************************/

#include<stdio.h>
#include<stdlib.h>
main()
{
 double temp[4][4];
 temp[0][0]=0.5149;
 temp[0][1]=0.3244;
 temp[0][2]=0.1607;
 temp[1][0]=0.2654;
 temp[1][1]=0.6704;
 temp[1][2]=0.0642;
 temp[2][0]=0.0248;
 temp[2][1]=0.1248;
 temp[2][2]=0.8504;
 
 int n;
 double sum;
 while(scanf("%d",&n)==1)
  {
   sum=0.0;
   int a,c;
   double x,y,z;;
   for(a=0;a<n;a++)
    {
     for(c=0;c<n;c++)
      {
       int r,g,b;
       scanf("%d %d %d",&r,&g,&b);
       x=r*temp[0][0]+g*temp[0][1]+b*temp[0][2];
       y=r*temp[1][0]+g*temp[1][1]+b*temp[1][2];
       z=r*temp[2][0]+g*temp[2][1]+b*temp[2][2];
       sum=sum+y;
       printf("%.4lf %.4lf %.4lf\n",x,y,z);
      }
    }
    printf("The average of Y is %.4lf\n",sum/(n*n));
  }
 return 0;
}