zoukankan      html  css  js  c++  java
  • Cat Snuke and a Voyage --AtCoder

    题目描述

    In Takahashi Kingdom, there is an archipelago of N islands, called Takahashi Islands. For convenience, we will call them Island 1, Island 2, ..., Island N.
    There are M kinds of regular boat services between these islands. Each service connects two islands. The i-th service connects Island ai and Island bi.
    Cat Snuke is on Island 1 now, and wants to go to Island N. However, it turned out that there is no boat service from Island 1 to Island N, so he wants to know whether it is possible to go to Island N by using two boat services.
    Help him.

    Constraints
    3≤N≤200 000
    1≤M≤200 000
    1≤ai<bi≤N
    (ai,bi)≠(1,N)
    If i≠j, (ai,bi)≠(aj,bj).

    输入

    Input is given from Standard Input in the following format:
    N M
    a1 b1
    a2 b2
    :
    aM bM

    输出

    If it is possible to go to Island N by using two boat services, print POSSIBLE; otherwise, print IMPOSSIBLE.

    样例输入

    3 2
    1 2
    2 3

    样例输出

    POSSIBLE

    分析:反正只需要两次即可,直接判断第一个节点后和第n个节点前有没有通。

    #include <iostream>
    #include <string>
    #include <cstdio>
    #include <cmath>
    #include <cstring>
    #include <algorithm>
    #include <vector>
    #include <queue>
    #define range(i,a,b) for(int i=a;i<=b;++i)
    #define LL long long
    #define rerange(i,a,b) for(int i=a;i>=b;--i)
    #define fill(arr,tmp) memset(arr,tmp,sizeof(arr))
    using namespace std;
    int n,m,a,b;
    bool vis[200005],flag;
    void init(){
        cin>>n>>m;
        fill(vis,0);
        range(i,1,m){
            cin>>a>>b;
            if(flag)continue;
            if(a==1){
                flag=vis[b];
                vis[b]=true;
            }
            else if(b==n){
                flag=vis[a];
                vis[a]=true;
            }
        }
    }
    void solve(){
        cout<<(flag?"POSSIBLE":"IMPOSSIBLE")<<endl;
    }
    int main() {
        init();
        solve();
        return 0;
    }
    View Code
  • 相关阅读:
    Sublime Text 3 3126 注册码
    修改bootstrap 的全局样式,bootstrap 3.0 是由html5和CSS 3组成的
    mysql-sql高级应用
    MySQL 主键冲突,无法插入数据
    jquery加载页面的方法(页面加载完成就执行)
    Jquery怎么获取select选中项 自定义属性的值
    使用Yii2中dropdownlist实现地区三级联动的例子
    Yii2中省市三级联动(栏目联动)
    [HNOI2009] 梦幻布丁
    [CJOJ2410]数列操作d
  • 原文地址:https://www.cnblogs.com/Rhythm-/p/9322339.html
Copyright © 2011-2022 走看看