zoukankan      html  css  js  c++  java
  • codeforce 599B Spongebob and Joke

    一道水题WA那么多发,也是醉了。f看成函数的话,其实就是判断一下反函数存不存在。

    坑点,只能在定义域内判断,也就是只判断b[i]。没扫一遍前不能确定Impossible。

    #include<bits/stdc++.h>
    using namespace std;
    
    typedef long long ll;
    
    const int maxn = 1e5+10;
    
    int f[maxn], b[maxn], a[maxn];
    int g[maxn];
    bool mul[maxn];
    
    //#define LOCAL
    int main()
    {
    #ifdef LOCAL
        freopen("in.txt","r",stdin);
    #endif
        int n, m; scanf("%d%d",&n,&m);
        bool Abm = false;
        for(int i = 1; i <= n; i++){
            scanf("%d", f+i);
            if(g[f[i]]) mul[f[i]] = true;
            g[f[i]] = i;
        }
        for(int i = 1; i <= m; i++){
            scanf("%d", b+i);
        }
        bool Imp = false;
        for(int i = 1; i <= m; i++){
            if(!g[b[i]]) {
                Imp = true; break;
            }
            if(mul[b[i]]){
                Abm = true;
            }
            a[i] = g[b[i]];
        }
        if(Imp) puts("Impossible");
        else {
            if(Abm) puts("Ambiguity");
            else {
                puts("Possible");
                for(int i = 1; i <= m; i++){
                    printf("%d%c", a[i], i != m? ' ': '
    ');
                }
            }
        }
        return 0;
    }
  • 相关阅读:
    关于npm无法安装依赖包以及安装包缓慢的解决方法
    centos 上安装nodejs v8.0.0
    nginx 负载均衡
    关于前端
    递归函数
    多重循环
    闭包
    spring boot集成mybatis(2)
    spring boot集成mybatis(3)
    spring boot集成mybatis(1)
  • 原文地址:https://www.cnblogs.com/jerryRey/p/4983234.html
Copyright © 2011-2022 走看看