zoukankan      html  css  js  c++  java
  • K


    #include<cstdio> #include<cstring> #include<string> #include<vector> #include<iostream> using namespace std; typedef long long ll; /* 这道题,1代表能打过他,0代表打不过 问怎样安排可以使0最后站在擂台上 开始以为可以将每个人能够打败的存起来 然后回溯法,妥妥t了 看题解发现,我们根本不需要回溯,画图发现,只要一直走去,根本不需要回溯 */ const int maxn = 1e3 + 10; char s[maxn][maxn]; vector<int>G[maxn]; int flag=0; int num[maxn]; int visit[maxn]; int n; int t; void dfs(int pos) { if(t==n){ flag=1; return; } if(flag) return; int len=G[pos].size(); for(int i=0;i<len;i++) { int v=G[pos][i]; if(!visit[v]) { visit[v]=1; num[t++]=v; dfs(v); } } return; } int main() { scanf("%d",&n); for(int i=0; i<n; i++) { scanf("%s",s[i]); for(int j=0; j<n; j++) if(s[i][j]=='1') G[i].push_back(j); } visit[0]=1; num[0]=0; t=1; dfs(0); if(flag) { for(int i=n-1;i>=1;i--) printf("%d ",num[i]); printf("0 "); } else printf("impossible "); return 0; }
  • 相关阅读:
    原生JS---2
    PHP中include和require绝对路径、相对路径问题
    魔方(小玩具)
    html5技术介绍
    苹果电脑 快捷键
    写代码的心得,怎么减少编程中的 bug?
    http状态代码含义表
    开源项目
    蓝牙 CoreBluetooth
    减小iOS应用程序的大小
  • 原文地址:https://www.cnblogs.com/zhangzhenjun/p/11878774.html
Copyright © 2011-2022 走看看