アットウィキロゴ

8-3y2

  1. // 20083y2.c
  2.  
  3. int main(){
  4. int h,i,j,k,l,m,min,n,kazu=0,x;
  5. int a[2];
  6. int c[10000];
  7. // ファイル開く
  8. FILE *fpin = fopen("puyo.txt","r");
  9. fscanf(fpin,"%d",&n);
  10. printf("%d\n",n);
  11. min=n;
  12. for(i=0;i<n;i++){
  13. fscanf(fpin,"%d",&c[i]);
  14. printf("%d\n",c[i]);
  15. }
  16. // for(h=0;h<n;h++,kazu=0){
  17. for(i=0;i+3<n-kazu;i++){
  18. if(c[i]==c[i+1]&&c[i]==c[i+2]&&c[i]==c[i+3]){ //前から数えて4つが同じ色の場合
  19. for(j=0;c[i]==c[i+j];++j){kazu++;} //同じ色が続く数を数える
  20. printf("j=%d,kazu=%d",j,kazu);
  21. //後ろのkazu個分はごみ
  22. for(k=0;i+j+k+1<n;k++){c[i+k] = c[i+j+k];} //消えた分は無視して前に詰める
  23. i = -1;//最後にi=0;とすることでもう一度上から情報をなめるのです
  24. for(x=0,printf("\n");x<n-kazu;x++){printf("%d\n",c[x]);}
  25. }
  26. }
  27. // if(min>n-kazu){min = n-kazu;}//n個の玉があってkazu個ごみな訳なのでn-kazu 個が残り
  28. printf("%d",n-kazu);
  29. return 0;
  30. }
最終更新:2009年11月04日 09:28
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。