zoukankan      html  css  js  c++  java
  • codevs 3732 解方程

    神题不可言会。

    f(x+p)=f(x)(mod p)

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    #define maxl 10050
    #define maxn 105
    using namespace std;
    int n,m,num[maxn][maxl],prime[]={0,5003,11261,19997,22877,21893},a[maxn],flag[maxn],ans[maxl*100],cnt=0;
    char s[maxl];
    bool vis[6][25000];
    void solve(int x)
    {
        for (int i=0;i<=n;i++)
        {
            int data=0;
            for (int j=1;j<=num[i][0];j++)
                data=(data*10+num[i][j])%prime[x];
            a[i]=data;
            if (flag[i]) a[i]=-a[i];
        }
        vis[x][0]=true;
        for (int i=1;i<=prime[x]-1;i++)
        {
            int data=a[n]*i%prime[x];
            for (int j=n-1;j>=0;j--)
                data=(data+a[j])*i%prime[x];
            if (data==0) vis[x][i]=true;
        }
    }
    int main()
    {
        memset(flag,false,sizeof(flag));
        scanf("%d%d",&n,&m);
        for (int i=0;i<=n;i++)
        {
            scanf("%s",s);
            if (s[0]=='-')
            {
                flag[i]=true;
                int len=strlen(s);num[i][0]=len-1;
                for (int j=1;j<=len-1;j++)
                    num[i][j]=s[j]-'0';
            }
            else
            {
                int len=strlen(s);num[i][0]=len;
                for (int j=0;j<=len-1;j++)
                    num[i][j+1]=s[j]-'0';
            }
        }    
        for (int i=1;i<=5;i++)
            solve(i);
        for (int i=1;i<=m;i++)
        {
            bool now=true;
            for (int j=1;j<=5;j++)
                now&=vis[j][i%prime[j]];
            if (now) ans[++cnt]=i;
        }
        printf("%d
    ",cnt);
        for (int i=1;i<=cnt;i++)
            printf("%d
    ",ans[i]);
        return 0;
    }
  • 相关阅读:
    C# 轻松读取、改变文件的创建、修改、访问时间 z
    C#中将dll汇入exe z
    ASP.NET中引用dll“找不到指定模块"的完美解决办法 z
    C# 调用第三方DLL z
    [ACM_贪心] Radar Installation
    Beauty Contest
    [ACM_几何] Wall
    [ACM_几何] Pipe
    [ACM_几何] Fishnet
    [ACM_动态规划] 找零种类
  • 原文地址:https://www.cnblogs.com/ziliuziliu/p/5754406.html
Copyright © 2011-2022 走看看