原题地址
题意:就是让你判断是否能有一条航道(且这个航道只能有一个中转岛,也就是说只能途径一次除了1和n的其他岛),能使第1和第n岛屿连接。
题解:两种办法

  • 第一种直接暴力,直接判断1和n之间有且仅有一个中转岛
  • 第二种深搜
    第一种代码:
#include<iostream>
#include<cstdio>
using namespace std;
int i,j,n,m,x[200003]= {0},a,b,num=0,num1=0;
int main()
{cin>>n>>m;for(i=0; i<m; i++){scanf("%d %d",&a,&b);if(a==1)x[b]++;if(b==n)x[a]++;}int flag=0;for(i=0; i<n; i++){if(x[i]==2){flag=1;break;}}if(flag==1)cout<<"POSSIBLE"<<endl;elsecout<<"IMPOSSIBLE"<<endl;
}

第二种代码:

#include <iostream>
#include <algorithm>
#include <cmath>
#include <vector>
#include <string>
#include <iomanip>
#include <string.h>
#include <algorithm>
//#include <bits/stdc++.h>
#include    <vector>
#define INF 999999999
# include <cstdio>
# include <cstdlib>
using namespace std;
#define ll long long
#define boost ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0)
int n ,k ,num=0, fa =0;
struct shi{int x ;int y ;int next;
}S[200010];
int head[200010];
int dfs(int yy,  int a){if(yy==n&&a==2){return 1;}for(int i = head[yy];i!=-1;i=S[i].next){int k = S[i].y;if(dfs(k,a+1))return 1;}return 0;
}
int main(){cin >>n>>k;memset(head,-1,sizeof(head));for(int i=1;i<=k;i++){int t , l;cin>>t >>l;S[num].x = t , S[num].y = l;S[num].next = head[t];head[t] = num++;}if(dfs(1 , 0 ))cout<<"POSSIBLE"<<endl;else cout<<"IMPOSSIBLE"<<endl;return 0;
}

Cat Snuke and a Voyage AtCoder - 2660相关推荐

  1. 图论 —— 图的搜索

    [概述] 图的搜索问题,是给出一个抽象的字符矩阵代表一张图,根据根据题目要求,对图进行搜索,关于搜索算法:点击这里 根据搜索方法的不同,分为深度优先遍历(DFS).广度优先遍历(BFS),两者时间复杂 ...

  2. Linux fork隐藏的开销-过时的fork(正传)

    本文来自<Linux fork那些隐藏的开销> fork是一个拥有50年历史的陈年系统调用,它是一个传奇!时至今日,它依旧灿烂. 一个程序员可以永远不用read/write,也可以不懂mm ...

  3. Linux fork那些隐藏的开销

    fork是一个拥有50年历史的陈年系统调用,它是一个传奇!时至今日,它依旧灿烂. 一个程序员可以永远不用read/write,也可以不懂mmap,但必须懂fork.这是一种格调! fork没有参数,它 ...

  4. AtCoder Regular Contest 061 E - Snuke‘s Subway Trip(建图 + dijkstra最短路 / 0/1bfs / 并查集)

    AtCoder Regular Contest 061 E - Snuke's Subway Trip problem 洛谷翻译 my idea 最近一直在做网络流,所以一读这题后,我就想到了最小费用 ...

  5. 【AtCoder 2069】Snuke's Subway Trip(构图方法)

    题目链接:[AtCoder 2069]Snuke's Subway Trip 题目大意:有 n n n个节点,m" role="presentation" style=& ...

  6. AtCoder 2068 すぬけ君の塗り絵 / Snuke's Coloring

    AtCoder 2068 すぬけ君の塗り絵 / Snuke's Coloring Problem Statement We have a grid with H rows and W columns. ...

  7. AtCoder AGC031E Snuke the Phantom Thief (费用流)

    题目链接 https://atcoder.jp/contests/agc031/tasks/agc031_e 题解 做法一(我的做法) 这是我yy出来的一个上下界费用流做法,自己没找到什么反例,能过. ...

  8. AtCoder AGC017C Snuke and Spells

    题目链接 https://atcoder.jp/contests/agc017/tasks/agc017_c 题解 很久前不会做看了题解,现在又看了一下,只想说,这种智商题真的杀我... 转化成如果现 ...

  9. すぬけ君の塗り絵 2 イージー / Snuke's Coloring 2 (ABC Edit) AtCoder - 2145

    这个题就是典型的想出轮廓后,然后再具体分类,弄出各种情况 其中发现了一个新的地方,之前是要记得每次循环更新数据,这次更新数据是要判断是否更新后,然后再更新(其实就可以用max与min函数) #incl ...

  10. 【每日亿题#12】AtCoder Grand Contest 021 (A ~ F)全部题解

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 文章目录 AtCoder Grand Contest 021 题解 A. Digit Sum 2 B. ...

最新文章

  1. spring定时任务重复执行2次问题的解决
  2. python判断图片模糊
  3. 如何以学习单片机为契机,逐步成为优秀的工程师
  4. 010 pandas的DataFrame
  5. 2018.9.19.Matlab实验四:Matlab程序设计
  6. 链上存证、链下传输的可信数据共享平台
  7. 每天进步一点点《ML - 基于层次的聚类》
  8. Super VLAN
  9. 70进货卖100利润是多少_进货价8块的产品,在网上卖100块,这个电商卖家能赚多少!...
  10. Hadoop HIVE 基本数据类型
  11. 苹果手机上网很慢_手机信号满格,但网速却很慢?无非是这4种原因,看完你就知道了...
  12. Android 锁屏,息屏情况下打开界面Activity,类似微信视频通话接电话时弹出接电话的界面
  13. 关于TKK失败问题(亲测有用 超详细)
  14. 【BlueZ】【蓝牙】跨平台实现Ble MasterSlaveMesh 之Linux篇-1
  15. Linux常用命令英文全称以及中文解释
  16. extjs 数字校园-云资源平台 2014.2.4-班级座位表
  17. zcmu--1042: 二哥的困惑 Ⅴ
  18. “损失函数”是如何设计出来的?直观理解“最小二乘法”和“极大似然估计法”
  19. Windows系统中如何将C盘划分为多个盘符的详细图文教程
  20. 本地电脑连接阿里云RDS Mysql数据库问题(10038错误)

热门文章

  1. 1300款主流单机游戏下载 大型PC电脑游戏使命14尼尔5模拟合集
  2. PIP安装wxpy报错
  3. LTE上行物理层传输机制(5)-CQI的传输方式
  4. 怎么用计算机算组合数c,排列组合c怎么算 公式是什么
  5. 网卡MAC地址是什么?
  6. Oracle开发 之 主-外键约束FK及约束的修改
  7. 没牙仔的世界(C++)
  8. 兔子-蓝牙 bluetooth (四)OPP文件传输
  9. 关于mybatis整合spring时报java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/Trasactionwar
  10. html动态背景分享,酷炫一款动态背景(HTML +js canvas)