{"id":1,"date":"2009-11-01T13:29:00","date_gmt":"2009-11-01T05:29:00","guid":{"rendered":"http:\/\/localhost\/?p=1"},"modified":"2009-11-01T13:29:00","modified_gmt":"2009-11-01T05:29:00","slug":"sgu_479_problem_solutions","status":"publish","type":"post","link":"https:\/\/www.shuizilong.com\/wjmzbmr\/?p=1","title":{"rendered":"sgu 479\u9898\u89e3"},"content":{"rendered":"<p> \u8fd9\u662f\u8fd9\u6b21\u6bd4\u8d5b\u4e2d\u6700\u7b80\u5355\u7684\u3002\u3002\u4e5f\u662f\u6211\u552f\u4e00\u505a\u51fa\u7684\u4e00\u9053\u3002\u3002<br \/>\u9898\u76ee\u5728http:\/\/acm.sgu.ru\/problem.php?contest=0&amp;problem=479<br \/>\u5f88\u660e\u663e\u6700\u540e\u4e00\u4e2a\u80af\u5b9a\u662f1\u3002\u3002\u6ca11\u80af\u5b9a\u6bcf\u89e3\u3002\u3002\u7136\u540e\u628a\u6700\u540e\u4e00\u4e2a\u62ff\u6389\u3002\u3002\u90a3\u4e48\u5468\u56f4\u7684\u90fd\u8981-1\u3002\u3002\u7136\u540e\u518d\u627e\u5012\u6570\u7b2c\u4e8c\u4e2a\u5c31\u53ef\u4ee5\u4e86\u3002\u3002\u6ce8\u610f\u5982\u679c\u67d0\u4e2a\u6570\u88ab-\u62100\u7684\u8bdd\u3002\u3002\u80af\u5b9a\u4e5f\u6ca1\u89e3\u3002\u3002\u53ef\u4ee5\u7528\u7c7b\u4f3c\u62d3\u6251\u6392\u5e8f\u7684\u65b9\u5f0f\u3002\u3002<br \/>Code\u3002\u3002\u5077\u61d2\u6548\u7387\u5199\u5f97\u5f88\u4f4e\u3002\u3002\u3002<br \/>#include&lt;queue&gt;<br \/>#include&lt;stack&gt;<br \/>#include&lt;iostream&gt;<br \/>#include&lt;cstdlib&gt;<br \/>#define REP(i,a,b) for(int i=a;i&lt;=b;i++)<br \/>using namespace std;<br \/>const int maxn=200+10;<br \/>const int di[]={-1,0,1,0},dj[]={0,1,0,-1};<br \/>int map[maxn][maxn],n,m;<br \/>bool mark[maxn][maxn]={0};<br \/>struct node<br \/>{<br \/>int x,y;<br \/>node(int x,int y):x(x),y(y){}<br \/>void show()<br \/>{<br \/>cout&lt;&lt;x&lt;&lt;&quot; &quot;&lt;&lt;y&lt;&lt;endl;<br \/>}<br \/>};<br \/>void Cant()<br \/>{<br \/>cout&lt;&lt;&quot;No solution&quot;&lt;&lt;endl;<br \/>exit(0);<br \/>}<br \/>int main()<br \/>{<br \/>cin&gt;&gt;n&gt;&gt;m;&#160;&#160;&#160; <br \/>queue&lt;node&gt; Q;<br \/>stack&lt;node&gt; S;<br \/>REP(i,0,n+1) REP(j,0,m+1) map[i][j]=10;<br \/>REP(i,1,n)<br \/>REP(j,1,m)<br \/>{<br \/>cin&gt;&gt;map[i][j];&#160;&#160;&#160; <br \/>if(map[i][j]==1)<br \/>Q.push(node(i,j));<br \/>}<br \/>while(Q.size())<br \/>{<br \/>node cur=Q.front();Q.pop();<br \/>S.push(cur);<br \/>mark[cur.x][cur.y]=true;&#160;&#160;&#160; &#160;&#160;&#160; <br \/>REP(k,0,3)<br \/>{<br \/>int t=di[k]+cur.x,u=dj[k]+cur.y;<br \/>if(!mark[t][u]&amp;&amp;map[t][u]!=10)<br \/>{<br \/>map[t][u]&#8211;;<br \/>if(!map[t][u])<br \/>Cant();<br \/>if(map[t][u]==1)<br \/>Q.push(node(t,u));<br \/>}<br \/>}<br \/>}<br \/>if(S.size()!=n*m)<br \/>Cant();<br \/>while(S.size())<br \/>{<br \/>S.top().show();S.pop();<br \/>}<br \/>} <\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u8fd9\u662f\u8fd9\u6b21\u6bd4\u8d5b\u4e2d\u6700\u7b80\u5355\u7684\u3002\u3002\u4e5f\u662f\u6211\u552f\u4e00\u505a\u51fa\u7684\u4e00\u9053\u3002\u3002\u9898\u76ee\u5728http:\/\/acm.sgu.ru\/problem.php?contest=0&amp;problem=479\u5f88\u660e\u663e\u6700\u540e\u4e00\u4e2a\u80af\u5b9a\u662f1\u3002\u3002\u6ca11\u80af\u5b9a\u6bcf\u89e3\u3002\u3002\u7136\u540e\u628a\u6700\u540e\u4e00\u4e2a\u62ff\u6389\u3002\u3002\u90a3\u4e48\u5468\u56f4\u7684\u90fd\u8981-1\u3002\u3002\u7136\u540e\u518d\u627e\u5012\u6570\u7b2c\u4e8c\u4e2a\u5c31\u53ef\u4ee5\u4e86\u3002\u3002\u6ce8\u610f\u5982\u679c\u67d0\u4e2a\u6570\u88ab-\u62100\u7684\u8bdd\u3002\u3002\u80af\u5b9a\u4e5f\u6ca1\u89e3\u3002\u3002\u53ef\u4ee5\u7528\u7c7b\u4f3c\u62d3\u6251\u6392\u5e8f\u7684\u65b9\u5f0f\u3002\u3002Code\u3002\u3002\u5077\u61d2\u6548\u7387\u5199\u5f97\u5f88\u4f4e\u3002\u3002\u3002#include&lt;queue&gt;#include&lt;stack&gt;#include&lt;iostream&gt;#include&lt;cstdlib&gt;#define REP(i,a,b) for(int i=a;i&lt;=b;i++)using namespace std;const int maxn=200+10;const int di[]={-1,0,1,0},dj[]={0,1,0,-1};int map[maxn][maxn],n,m;bool mark[maxn][maxn]={0};struct node{int x,y;node(int x,int y):x(x),y(y){}void show(){cout&lt;&lt;x&lt;&lt;&quot; &quot;&lt;&lt;y&lt;&lt;endl;}};void Cant(){cout&lt;&lt;&quot;No solution&quot;&lt;&lt;endl;exit(0);}int main(){cin&gt;&gt;n&gt;&gt;m;&#160;&#160;&#160; queue&lt;node&gt; Q;stack&lt;node&gt; S;REP(i,0,n+1) REP(j,0,m+1) map[i][j]=10;REP(i,1,n)REP(j,1,m){cin&gt;&gt;map[i][j];&#160;&#160;&#160; if(map[i][j]==1)Q.push(node(i,j));}while(Q.size()){node cur=Q.front();Q.pop();S.push(cur);mark[cur.x][cur.y]=true;&#160;&#160;&#160; &#160;&#160;&#160; REP(k,0,3){int t=di[k]+cur.x,u=dj[k]+cur.y;if(!mark[t][u]&amp;&amp;map[t][u]!=10){map[t][u]&#8211;;if(!map[t][u])Cant();if(map[t][u]==1)Q.push(node(t,u));}}}if(S.size()!=n*m)Cant();while(S.size()){S.top().show();S.pop();}}<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[10],"tags":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts\/1"}],"collection":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1"}],"version-history":[{"count":0,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=\/wp\/v2\/posts\/1\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shuizilong.com\/wjmzbmr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}