3 条题解

  • 2
    @ 2025-6-24 14:13:34

    这是最快的一个

    #include<iostream>
    #include<cstdio>
    #include<bitset>
    
    using namespace std;
    
    int n,g[102][2],cnt;
    bitset<1000006> f;
    
    int main(){
    	scanf("%d",&n);
    	for (int i=1;i<=n;i++){
    		scanf("%d%d",&g[i][0],&g[i][1]);
    		g[i][0]=g[i][0]*g[i][0];
    		g[i][1]=g[i][1]*g[i][1];
    	}
    	f[0]=1;
    	for (int i=1;i<=n;i++){
    		f=(f<<g[i][0])|(f<<g[i][1]);
    	}
    	printf("%d",f.count());
    	return 0;
    }
    

    信息

    ID
    289
    时间
    1000ms
    内存
    256MiB
    难度
    6
    标签
    (无)
    递交数
    51
    已通过
    17
    上传者