zoukankan      html  css  js  c++  java
  • 51nod 1103【鸽巢原理】

    思路:
    这道题嘛有些弯还是要转的,比如你说让你搞n的倍数,你别老老实实照她的意思去啊,倍数可以除法,取膜 。
    因为n个数我们可以求前缀和然后取膜,对n取膜的话有0-n-1种情况,所以方案一定是有的,说的好听一点就是因为鸽巢原理,如果取膜=0那直接输出,如果有两种相等的,减一下输出就好了,一定会存在,而且不用判没有情况的。)虽然我判了。。。

    #include <stdio.h>
    #include <string.h>
    #include <iostream>
    using namespace std;
    
    typedef long long LL;
    
    const int N=5e4+10;
    
    LL a[N];
    int d[N];
    bool vis[N];
    int n;
    
    int main()
    {
        LL x,sum;
        memset(vis,0,sizeof(vis));
        scanf("%d",&n);
        sum=0;
        LL ff;
        bool flag=false;
        for(int i=1;i<=n;i++)
        {
            scanf("%lld",&a[i]);
            if(flag)
                continue;
            sum+=a[i];
            ff=sum%n;
            if(!ff)
            {
                printf("%d
    ",i);
                for(int j=1;j<=i;j++)
                    printf("%lld
    ",a[j]);
                flag=true;
            }
            else
            {
                if(!vis[ff])
                {
                    vis[ff]=true;
                    d[ff]=i;
                }
                else
                {
                    printf("%d
    ",i-d[ff]);
                    for(int j=d[ff]+1;j<=i;j++)
                        printf("%lld
    ",a[j]);
                    flag=true;
                }
            }
        }
        if(!flag)
        printf("No Solution
    ");
        return 0;
    }
    
    
  • 相关阅读:
    函数表达式
    BOM
    让超出容器高度的内容滚动显示但不出现滚动条
    插件书写示例
    php中redis的安装
    日常工作bug总结
    pip freeze requirements.txt命令迁移模块
    Django18-中间件和cache实现限制用户访问频率
    Django17-文件上传下载
    Django16-cache缓存
  • 原文地址:https://www.cnblogs.com/keyboarder-zsq/p/5934842.html
Copyright © 2011-2022 走看看