hdu 1689 Alien’s Necklace
来源:互联网 发布:淘宝店铺粉丝怎么看 编辑:程序博客网 时间:2024/05/22 05:19
输出节点数为奇数且最小环的节点数
开始开2维数组果断超内存,看了别人的代码才知道用奇偶性来标记
#include<iostream>#include<vector>#include<queue>#include<cstring>#define maxn 10000+1using namespace std;vector<int>mapp[maxn];int n,m;int visit[maxn][2];struct stu{int pre;int now;int deep;};int bfs(int p){queue<stu>root;stu x,y;x.pre=-1;x.now=p;x.deep=0;root.push(x);while(root.size()){x=root.front();root.pop();if(x.now==p&&x.deep>=3&&x.deep%2) return x.deep;else if(x.now==p&&x.deep!=0) continue; for(int i=0;i<mapp[x.now].size();i++){if(mapp[x.now][i]!=x.pre&&!visit[mapp[x.now][i]][(x.deep+1)%2]){y.pre=x.now;y.now=mapp[x.now][i];y.deep=x.deep+1;visit[y.now][y.deep%2]=1;root.push(y);} }}return 1<<30;}int main(){cin.sync_with_stdio(false);int t;cin>>t;int casee=1;while(t--){cin>>n>>m;for(int i=1;i<=n;i++) mapp[i].clear();for(int i=0;i<m;i++){int x,y;cin>>x>>y;mapp[x].push_back(y);mapp[y].push_back(x);}int ans=1<<30;for(int i=1;i<=n;i++){memset(visit,0,sizeof(visit));ans=min(ans,bfs(i));}cout<<"Case "<<casee++<<": ";if(ans!=1<<30) cout<<"JYY has to use "<<ans<<" balls."<<endl;else cout<<"Poor JYY."<<endl;}return 0;}
1 0
- hdu 1689 Alien’s Necklace
- hdu 1689 Alien’s Necklace (bfs层次图剪枝)
- hdu 1689 Alien’s Necklace(bfs搜索最小奇数环)
- hdu1689 Alien’s Necklace--BFS & 奇偶标记
- hd 1689 Alien’s Necklace[转自剑哥的代码]
- A - Alien's Organ
- ZOJ3696 Alien's Organ
- Necklace HDU
- Necklace HDU
- zoj 3696 Alien's Organ
- ZOJ 3696 Alien's Organ
- zoj 3696 Alien's Organ
- hdu 3474 Necklace
- hdu 3874 Necklace
- hdu 3874 Necklace
- hdu 3874 Necklace
- hdu 3874 Necklace
- hdu 2660 Accepted Necklace
- [SSH_easyUI]细节4:后台主要代码
- android touch事件分发机制
- HTTP 2 学习与翻译
- 从项目中学习jsp知识
- enable dynamic db table creation勾选有什么用?
- hdu 1689 Alien’s Necklace
- 百度分词算法分析
- leetcode Longest Substring Without Repeating Characters
- php 45 上传图片预览
- 灵活组装Json的数据使用Gson的JsonParser和JsonReader解析Json详解例子
- Windows 下Apache2.2+MySql5.5+PHP5.4的安装和配置
- mybatis中_parameter使用和常用sql
- 以淘宝详情页面Json为例使用Gson的JsonReader解析复杂Json数据详解
- PHP的require和include