zoukankan      html  css  js  c++  java
  • Farewell Party-构造

    Farewell Party

    思路 : 转换思路 ,有 a [ i ] 个不相等的 ,那么至少得有 n - a [ i ]个与它相等的。 但是有可能与它拥有相同数目的有很多。

    但是为了能够最终 分配成成功  总的 个数 % N - a [ i ] 必须 == 0。所以 这样判断完否定之后 进行分配时需要操作的就是,

    把 每 N - a [ i ]  个 a [ i ]  设置为同一颜色即可 。

    #include<bits/stdc++.h>
    using namespace std;
    #define maxn 123456
    int a[maxn],n,tong[maxn],ss[maxn];
    int vis[maxn],id=0,flag,ans[maxn];
    int main()
    {
        scanf("%d",&n);
        for(int i=1; i<=n; i++)
        {
            scanf("%d",&a[i]);
            tong[a[i]]++;
        }
        for(int i=1; i<=n; i++)
        {
            if(tong[a[i]]<n-a[i])flag=1;
            if(tong[a[i]]%(n-a[i])!=0)flag=1;
            if(vis[a[i]]!=0&&ss[a[i]]<n-a[i])
            {
                ans[i]=vis[a[i]];
                ss[a[i]]++;
            }
            else if(vis[a[i]]!=0&&ss[a[i]]==n-a[i])
            {
                ans[i]=vis[a[i]]=++id;
                ss[a[i]]=1;
            }
            else
            {
                ans[i]=vis[a[i]]=++id;
                ss[a[i]]++;
            }
        }
        if(flag)printf("Impossible
    ");
        else
        {
            printf("Possible
    ");
            for(int i=1; i<=n; i++)
            {
                printf("%d",ans[i]);
                if(i==n)printf("
    ");
                else printf(" ");
            }
        }
        return 0;
    }
    

      

  • 相关阅读:
    JSTL基础知识
    EL表达式基础知识
    Log4Net使用详解
    ViewState存储到服务器
    WCF通信过程
    值类型与引用类型总结
    使用 HttpWebRequest 发送模拟 POST 请求
    OOP组合和继续的优缺点
    XPath在asp.net中查询XML
    Equal 和==比较
  • 原文地址:https://www.cnblogs.com/SDUTNING/p/10256218.html
Copyright © 2011-2022 走看看