#3808: wawawa...sos


marksosy (sosy)

學校 : 朝陽科技大學
編號 : 12032
來源 : [60.250.90.79]
最後登入時間 :
2012-05-28 16:33:14
d244. 一堆石頭 | From: [119.15.250.170] | 發表日期 : 2010-06-01 11:47

有大大能幫看程式那邊出錯嗎??

一直 wawawa  又不知道出錯在那邊

真的是悶到快炸了 囧rz....

先謝謝好心的大大了....

 

----------------------------------------------------------------------------

#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main(){
    char c[1100000];    //存放輸入資料
    long int len , i , n  , maxlen    ;
    while(cin.getline(c,1100000)){
        long int number[100000][2]={0};    // [][0]存數字 [][1]記錄次數
        maxlen=-1;    //記錄 陣列位址
        stringstream str(c);
        string s;
        //分割
        while(getline(str,s,' ')){
            if(str.fail())break;
            n=0;
            //len=s.size();
            len=s.length();
            //轉數字
            for( i = 0 ; i < len ; i ++ ){
                n=n*10+s[i]-'0';
            }
            //放入陣列 並記錄次數
            for( i = 0 ; i <= maxlen ; i ++ ){
                //如果已放入陣列 次數+1
                if(number[i][0]==n){
                    number[i][1]++;
                    break;
                }
            }
            //陣列中還沒有資料 把數字存入
            if( i > maxlen ){
                maxlen++;
                number[maxlen][0]=n;
                number[maxlen][1]=1;
            }

        }
        //找出不是3倍數的數字
        for( i = 0 ; i <= maxlen ; i++ ){
            if( number[i][1] %3 ){
                cout<<number[i][0]<<endl;

                break;
            }

        }
    }


    return 0;
}

 
ZeroJudge Forum