UVA10763-交換生
阿新 • • 發佈:2019-01-07
題目大意:交換生,顧名思義,必須是有來有回才算交換。現在有若干個學生要申請交換生,判斷他們的能不能全部都找到交換物件。
即:判斷有向圖裡每個結點的入度和出度為零。
#include <iostream> #include <cstdio> #include <cstring> #include <string> #include <algorithm> using namespace std; int Case,x,y,opt[1000][1000]; bool solve() { for(int i=0;i<1000;i++) for(int j=0;j<1000;j++) if(opt[i][j]!=0) return false; return true; } int main() { while(cin>>Case&&Case!=0) { memset(opt,0,sizeof(opt)); for(int i=1;i<=Case;i++) { cin>>x>>y; opt[x][y]++; opt[y][x]--; } if(solve()) cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }