CodeForces 117C Cycle 搜索
来源:互联网 发布:以史为鉴 可以知兴替 编辑:程序博客网 时间:2024/05/18 09:20
题意
求一个长度为3的环。
题解
枚举中间的点判断fa和child的关系?
一个dfs即可。
作死在读入图的时候用scanf(“%1d”, &g[i][j])
然后TLE 233。
代码
#include <cstdio>const int N = 5005;int n, a, b, c, g[N][N], vis[N];bool dfs(int u, int fa) { vis[u] = 1; for (int v = 1; v <= n; v++) if (g[u][v]) { if (fa && g[v][fa]) { a = fa; b = u; c = v; return 1; } if (!vis[v]) if (dfs(v, u)) return 1; } return 0;}char valid_char() { char ch = getchar(); for (; ch < '0' || ch > '9'; ch = getchar()); return ch;}int main() { int i, j; scanf("%d", &n); for (i = 1; i <= n; i++) for (j = 1; j <= n; j++) g[i][j] = valid_char() - '0'; for (i = 1; i <= n; i++) if (!vis[i]) if (dfs(i, 0)) { printf("%d %d %d", a, b, c); return 0; } puts("-1"); return 0;}
C. Cycle
time limit per test2.5 seconds
memory limit per test256 megabytes
inputstandard input
outputstandard output
A tournament is a directed graph without self-loops in which every pair of vertexes is connected by exactly one directed edge. That is, for any two vertexes u and v (u ≠ v) exists either an edge going from u to v, or an edge from v to u.
You are given a tournament consisting of n vertexes. Your task is to find there a cycle of length three.
Input
The first line contains an integer n (1 ≤ n ≤ 5000). Next n lines contain the adjacency matrix A of the graph (without spaces). Ai, j = 1 if the graph has an edge going from vertex i to vertex j, otherwise Ai, j = 0. Ai, j stands for the j-th character in the i-th line.
It is guaranteed that the given graph is a tournament, that is, Ai, i = 0, Ai, j ≠ Aj, i (1 ≤ i, j ≤ n, i ≠ j).
Output
Print three distinct vertexes of the graph a1, a2, a3 (1 ≤ ai ≤ n), such that Aa1, a2 = Aa2, a3 = Aa3, a1 = 1, or “-1”, if a cycle whose length equals three does not exist.
If there are several solutions, print any of them.
Sample test(s)
input
50010010000010011110111000
output
1 3 2
input
50111100000010000110001110
output
-1
- CodeForces 117C Cycle 搜索
- Codeforces 117C Cycle
- codeforces 117C - Cycle 图论 DFS
- Codeforces 117C. Cycle 寻找环
- Codeforces Test Round 10 C 水搜索
- CodeForces 374C 记忆化搜索
- CodeForces 371C-Hamburgers(二分搜索)
- CodeForces 580C 树+dfs搜索
- codeforces 339C 记忆化搜索
- codeforces 721C 记忆化搜索 / dp
- Codeforces Round #406 C. Berzerk(搜索)
- Codeforces 263 C. Circle of Numbers D. Cycle in Graph (dfs一般难度)
- Codeforces 769C Cycle In Maze【Bfs+思维】这题有点劲啊
- Codeforces Beta Round #88 C. Cycle —— DFS(找环)
- HDU 5215 Cycle (搜索)
- codeforces 132C Logo Turtle dp DFS 搜索答案
- Codeforces Round #197 (Div. 2) C. Xenia and Weights - 搜索
- codeforces 580C(Kefa and Park, 搜索类型题)
- 工作中用到的FFmpeg命令
- C语言之linux内核实现位数高低位互换
- Android系统移植(三)
- 数据库-------Statement和preparedStatement的区别
- android-错误:refused to install the app by The ADB command !
- CodeForces 117C Cycle 搜索
- CentOS虚拟机环境下安装JDK环境
- Visual Studio 2008试用版的评估期已经结束
- Android系统移植(四)
- 【转】AS技巧合集
- wamp相关问题
- windows多线程同步机制---可等候定时器
- hammer.js初识
- J2EE的13种核心技术