zoukankan      html  css  js  c++  java
  • bitset [HZOI 2016]动物城的鸳鸯蛋传说

     传送门

             神奇的bitset()

     我太弱才学会bitset 。用来制造一个超大的二进制数存东西,对于这道题就是用来存那个数能被求出。bitset还用来加速求的过程,bitset|=bitset<<x[i]就直接把原来的数加上新数了(就这里最神奇)

             

    #include<cstdio>
    #include<cstring>
    #include<cstdlib>
    #include<iostream>
    #include<algorithm>
    #include<bitset>
    #define mod 10007
    #define ll long long
    #define Mod 1000007
    using namespace std;
    ll t,n,m,a,b,c,y,d,e,f,s[200005];
    bitset<1000010> ans;
    inline ll read()
    {
    	ll sum=0,f=1;char x=getchar();
    	while(x<'0'||x>'9'){if(x=='-')f=-1;x=getchar();}
    	while(x>='0'&&x<='9')sum=sum*10+x-'0',x=getchar();
    	return sum*f;
    }
    int yjn()
    {
    	freopen("animalcupid.in","r",stdin);
    	freopen("animalcupid.out","w",stdout);
    	t=read();
    	while(t--)
    	{
    		ans.reset();
    		ans.set(0);
    		n=read();m=read();
    		s[0]=read()%mod;a=read()%mod;b=read()%mod;c=read()%mod;
    		y=read()%Mod;d=read()%Mod;e=read()%Mod;f=read()%Mod;
    		for(int i=1;i<=n;i++)
    		{
    		   s[i]=(((a%mod)*(s[i-1]%mod)*(s[i-1])%mod)%mod+((b%mod)*(s[i-1]%mod))%mod+c%mod)%mod;
    		   ans|=ans<<s[i];
    		}
    		for(int i=1;i<=m;i++)
    		{
    			y=((((y%Mod)*(y%Mod))%Mod*(d%Mod))%Mod+((y%Mod)*(e%Mod))%Mod+f%Mod)%Mod;
    			if(ans[y])
    			   printf("yes
    ");
    			else
    			   printf("no
    ");
    		}
    	}
    }
    int qty=yjn();
    int main(){;}

     

  • 相关阅读:
    js复制功能
    网页倒退监听
    CSS 设置table下tbody滚动条
    js滚动条滚动到底部 例如聊天这种
    时间格式转换器
    js插件整理和总结
    Js判断移动端是否存在客户端:如果存在则打开,如果不存在则下载
    qt布局添加控件的父控件说明
    qt控件模糊效果
    QT TCPSocket和QTCPServer使用
  • 原文地址:https://www.cnblogs.com/QTY2001/p/7632777.html
Copyright © 2011-2022 走看看