#568: 白飯吃太多了......


shadowevor (ShadowEvor)

學校 : 臺北市立建國高級中學
編號 : 2286
來源 : [59.117.213.125]
最後登入時間 :
2008-10-16 21:53:16
b078. E. 白飯 -- 2007 NPSC 國中組初賽 | From: [59.117.211.144] | 發表日期 : 2008-09-10 21:38

關於白飯這題
想當年我NPSC也是死在這題...搞了半天
傳了好幾次....後來才發現是宣告的問題
雖然對了可是也失了不少分...
想不到...當時用VB6
現在用C++ 又與到了窘境(囧境?)
這麼簡單的題目怎麼會........!!!!
 
請好心人士幫我看看吧
測資過了 但是結果WA
請好心人士幫我看看到底是怎麼樣啊~~~ 
(對不起我是白痴 這麼簡單的題目....) 
 
#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
int p[1000],i,n,sum=0,count=0;
double avg;
while(cin>>n)
{
count=0;sum=0;
if (n==0) break;
for (i=0;i<n;i++) {
cin>>p[i];
sum+=p[i];
}
avg=sum/n;
for (i=0;i<n;i++) {
if (p[i]<avg) count++;
}
printf("%d\n",count);
}
return EXIT_SUCCESS;
}
 
#569: Re:白飯吃太多了......


POOHccc ()

學校 : 國立臺中技術學院
編號 : 1139
來源 : [220.135.97.253]
最後登入時間 :
2012-02-04 21:23:42
b078. E. 白飯 -- 2007 NPSC 國中組初賽 | From: [220.135.97.253] | 發表日期 : 2008-09-10 23:46

avg=(double)sum/n;
沒加這個(double)的話,實際上程式是根據sum的資料型別作轉換
也就是avg=(int)sum/n;唷 
 
ZeroJudge Forum