Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
ah~~~疯了... 不知道错哪里啊!!!!!!! help#include<iostream.h> const int sumOfWheights=110; const int sumOfCoins=1010; int coinNumber[sumOfCoins]; void creatRecord(int record[sumOfWheights][sumOfCoins],char flag[sumOfWheights],int totalWheights) { int i; int j; int sumCoins; for(i=0;i<totalWheights;i++) { cin>>record[i][0]; sumCoins=record[i][0]*2; for(j=1;j<=sumCoins;j++) cin>>record[i][j]; cin>>flag[i]; } } void judgeHeavy(int record[sumOfWheights][sumOfCoins],char flag[sumOfWheights],int totalWheights,int totalCoins) { int i; int j; int coins; char actualFlag; int coinsInPan; int canFindTheCoin; for(coins=1;coins<=totalCoins;coins++) { canFindTheCoin=0; for(i=0;i<totalWheights;i++) { coinsInPan=record[i][0]*2; actualFlag='='; for(j=1;j<=coinsInPan;j++) { if(record[i][j]==coins) { if(j<=record[i][0]) actualFlag='>'; else actualFlag='<'; break; } } if(flag[i]!=actualFlag) { canFindTheCoin=0; break; } else canFindTheCoin=1; } if(canFindTheCoin) coinNumber[coins]=1; } } void judgeLight(int record[sumOfWheights][sumOfCoins],char flag[sumOfWheights],int totalWheights,int totalCoins) { int i; int j; int coins; char actualFlag; int coinsInPan; int canFindTheCoin; for(coins=1;coins<=totalCoins;coins++) { canFindTheCoin=0; for(i=0;i<totalWheights;i++) { coinsInPan=record[i][0]*2; actualFlag='='; for(j=1;j<=coinsInPan;j++) { if(record[i][j]==coins) { if(j<=record[i][0]) actualFlag='<'; else actualFlag='>'; break; } } if(flag[i]!=actualFlag) { canFindTheCoin=0; break; } else canFindTheCoin=1; } if(canFindTheCoin) coinNumber[coins]=1; } } int printAnswer(int totalCoins,int turn) { int i; int ans=0; int numOfFalseCoin=0; int positionOfFalseCoin=0; for(i=1;i<=totalCoins;i++) { if(coinNumber[i]) { numOfFalseCoin++; positionOfFalseCoin=i; } } if(numOfFalseCoin==1) { cout<<positionOfFalseCoin<<endl; return 1; } else if(turn==2) { cout<<ans<<endl; return 0; } else return 0; } void initialCoinArray() { int i; for(i=0;i<sumOfCoins;i++) coinNumber[i]=0; } int main() { int totalCoins; int totalWheights; int record[sumOfWheights][sumOfCoins]; char flag[sumOfWheights]; cin>>totalCoins>>totalWheights; creatRecord(record,flag,totalWheights); judgeHeavy(record,flag,totalWheights,totalCoins); if(!printAnswer(totalCoins,1)) { initialCoinArray(); judgeLight(record,flag,totalWheights,totalCoins); printAnswer(totalCoins,2); } return 0; } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator