#4020: 與正確輸出不相符(line:9) (C++)


ip3311 (POPO)

學校 : 國立臺北教育大學
編號 : 10510
來源 : [220.132.235.21]
最後登入時間 :
2010-07-30 23:20:30
a020. 身分證檢驗 | From: [120.127.36.45] | 發表日期 : 2010-07-22 14:02

#include<iostream>
#include<string>
using namespace std;

int main()
{
    string s;

    while(cin>>s)
    {
        int country;
        if(s.substr(0,1)=="I")
        {
            country=34;
        }
        else if(s.substr(0,1)=="O")
        {
            country=35;
        }
        else
        {
            country=s[0]-55;
            
            if(country>17)
            {
                country--;
            }
            if(country>22)
            {
                country--;
            }
        }

        int ans=(country%10)*9+country/10;

        for(int i=1;i<9;i++)
        {
            ans=ans+atoi(s.substr(i,1).c_str())*(9-i);
        }

        ans=ans+atoi(s.substr(9,1).c_str());

        if(ans%10==0)
            cout<<"real"<<'\n';
        else
            cout<<"fake"<<'\n';
    }
}

 

請問我少考慮到什麼?

 
ZeroJudge Forum