PAT 乙級 1046 劃拳
阿新 • • 發佈:2018-06-30
stack alt cin tdi 分享圖片 name for lock mes
輸入樣例:
5
8 10 9 12
5 10 5 10
3 8 5 12
12 18 1 13
4 16 12 15
輸出樣例:
1 2
思路是建立一張表,儲存劃拳的信息,一個一個地去比較統計。
#include <iostream> #include <stdio.h> #include <string.h> #include <string> #include <map> #include <queue> #include <stack> #include <algorithm> using namespace std; struct ImformationOfAandB { int guessOfA,guessOfB; int resultOfA,resultOfB; }; void count(ImformationOfAandB* p,int n); int main() { int n; cin>>n; ImformationOfAandB* p=new ImformationOfAandB[n]; for(int i=0;i<n;i++) cin>>p[i].guessOfA>>p[i].resultOfA>>p[i].guessOfB>>p[i].resultOfB; count(p,n); delete p; return 0; } void count(ImformationOfAandB* p,int n) { int countOfA=0,countOfB=0; for(int i=0;i<n;i++) { if(p[i].resultOfA==p[i].guessOfA+p[i].guessOfB && p[i].resultOfB!=p[i].guessOfA+p[i].guessOfB) countOfA++; else { if(p[i].resultOfA!=p[i].guessOfA+p[i].guessOfB && p[i].resultOfB==p[i].guessOfA+p[i].guessOfB) countOfB++; } } cout<<countOfB<<" "<<countOfA; }
PAT 乙級 1046 劃拳