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

poj 2585 Window Pains

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

poj 2585 Window Pains

#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include<string>#include <vector>#define INF 1E9using namespace std;vector<int> map[16];bool ok[10][10];int vis[10];void init(){    int i,now=0;    for(i=1;i<10&&now<15;i++)    {        map[now].push_back(i);        map[now+1].push_back(i);        map[now+4].push_back(i);        map[now+5].push_back(i);        now++;        if(i%3==0)now++;    }    return;}bool dfs(int m){    int i;    vis[m]=-1;    for(i=1;i<10;i++)    {        if(!ok[m][i])continue;        if(vis[i]<0)return 0;        if(!vis[i]&&!dfs(i))return 0;    }    vis[m]=1;    return 1;}bool topo(){    for(int i=1;i<10;i++)      if(!vis[i]&&!dfs(i))return 0;    return 1;}int main(){    init();    string s;    int i,t,j;    while(cin>>s&&s!="ENDOFINPUT")    {        memset(vis,0,sizeof(vis));        memset(ok,0,sizeof(ok));        for(i=0;i<16;i++)        {scanf("%d",&t);for(j=0;j<map[i].size();j++){    if(t==map[i][j])continue;    ok[t][map[i][j]]=1;}        }        if(topo())cout<<"THESE WINDOWS ARE CLEAN"<<endl;        else cout<<"THESE WINDOWS ARE BROKEN"<<endl;        cin>>s;    }}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/376486.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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