[問題] 高中生 解題系統 b964
題目網址
https://zerojudge.tw/ShowProblem?problemid=b964
找到參考解答
要問的是 while (scanf("%d",&n) !=EOF )
!=EOF 是什麼意思呢
常常看到 競賽題 為何都要這樣寫@@
用C++的 while ( cin>>n ) 是否也可呢?
#include <cstdio>
#include <cstdlib>
int cmp(const void * a, const void * b){
return ( *(int*)a - *(int*)b );
}
int main(){
int n,score[20],a60,b60;
while (scanf("%d",&n) !=EOF ){
a60=-1,b60=-1;
for(int i=0;i<n;i++){
scanf("%d",&score[i]);
}
qsort(score,n,sizeof(int),cmp);
for(int i=0;i<n;i++){//由前往後找小於60的最大數
if (score[i]<60) b60=score[i];
}
for(int i=n-1;i>=0;i--){//由後往前找大於等於60的最小數
if (score[i]>=60) a60=score[i];
}
printf("%d",score[0]);
for(int i=1;i<n;i++){
printf(" %d",score[i]);
}
printf("\n");
if (b60 != -1) printf("%d\n",b60);
else printf("best case\n");
if (a60 != -1) printf("%d\n",a60);
else printf("worst case\n");
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.203.74.58
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1537450097.A.174.html
→
09/20 21:42,
7年前
, 1F
09/20 21:42, 1F
→
09/20 21:58,
7年前
, 2F
09/20 21:58, 2F
※ 編輯: tyjh (203.203.74.58), 09/20/2018 22:00:46
→
09/20 22:47,
7年前
, 3F
09/20 22:47, 3F
→
09/20 23:33,
7年前
, 4F
09/20 23:33, 4F
推
09/20 23:37,
7年前
, 5F
09/20 23:37, 5F
→
09/20 23:37,
7年前
, 6F
09/20 23:37, 6F
→
09/20 23:42,
7年前
, 7F
09/20 23:42, 7F
→
09/20 23:42,
7年前
, 8F
09/20 23:42, 8F
→
09/20 23:49,
7年前
, 9F
09/20 23:49, 9F
→
09/20 23:50,
7年前
, 10F
09/20 23:50, 10F
→
09/21 09:24,
7年前
, 11F
09/21 09:24, 11F
→
09/21 14:18,
7年前
, 12F
09/21 14:18, 12F
→
09/21 14:18,
7年前
, 13F
09/21 14:18, 13F
推
09/21 16:44,
7年前
, 14F
09/21 16:44, 14F
推
09/22 03:45,
7年前
, 15F
09/22 03:45, 15F