栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

poj 2599 A funny game

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

poj 2599 A funny game

#include <cstdlib>   #include <cctype>   #include <cstring>   #include <cstdio>   #include <cmath>   #include <algorithm>   #include <vector>   #include <string>   #include <iostream>   #include <sstream>   #include <map>   #include <set>   #include <queue>   #include <stack>   #include <fstream>   #include <numeric>   #include <iomanip>   #include <bitset>   #include <list>   #include <stdexcept>   #include <functional>   #include <utility>   #include <ctime>using namespace std;#define MAX(a,b) ((a) > (b) ? (a) : (b))#define MIN(a,b) ((a) < (b) ? (a) : (b))#define MEM(a,b) memset((a),(b),sizeof(a))const int N = 1001;vector<int> v[N];int flag[N];int np[N];int n,k;int getans(int x){flag[x] = 1;if(np[x]!=-1) return np[x];int f = 0;for(int i = 0; i < v[x].size(); i++){if(!flag[v[x][i]]){if(!getans(v[x][i])){f = 1;}}}return np[x] = f;}int main(){while(cin >> n >> k){int x,y;for(int i = 1; i <= n; i++){v[i].clear();}for(int i = 1; i < n; i++){cin >> x >> y;v[x].push_back(y);v[y].push_back(x);}for(int i = 1; i <= n; i++){sort(v[i].begin(),v[i].end());}MEM(flag,0);MEM(np,-1);if(getans(k)){for(int i = 0; i < v[k].size(); i++){if(np[v[k][i]] == 0){cout << "First player wins flying to airport " << v[k][i] << endl;break;}}}elsecout << "First player loses" << endl;}return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/370154.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号