当前位置: 首页 > news >正文

pta 乐子人游戏

题解:

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
const int N=2010,M=2000000;
int etop=0;
vector<int> match(N,0);
struct EDGE{
    int u,v;
    EDGE* next;
}edge[M];
struct NODE{
    EDGE* fir;
}node[N];
void add_edge(int a,int b){
    edge[etop]={a,b,node[a].fir};
    node[a].fir=&edge[etop];
    etop++;
}
bool find(int x,vector<bool>& vis){
    EDGE* e=node[x].fir;
    while(e!=nullptr){
        int j=(e->v);
        if(!vis[j]){
            vis[j]=true;
            if(!match[j]||find(match[j],vis)){
                match[j]=x;
                return true;
            }
        }
        e=e->next;
    }
    return false;
}
int main(){
    vector<int> prim;
    vector<int> prime(N,0);
    vector<int> notp(N,0);
    notp[1]=1;
    int n,maxi=-1,score1=0,score2=0;
    cin>>n;
    vector<int> a(n,0),b(n,0),c;
    for(int i=0;i!=n;++i){
        cin>>a[i];
        maxi=max(a[i],maxi);
    }
    for(int i=0;i!=n;++i){
        cin>>b[i];
        maxi=max(b[i],maxi);
    }
    for(int i=1;i<=2*maxi;++i){
        if(!notp[i]){
            prime[i]=1;
            prim.push_back(i);
        }
        for(int q=0;q!=prim.size();++q){
            if(prim[q]*i>2*maxi) break;
            notp[prim[q]*i]=1;
            if(i%prim[q]==0) break;
        }
    }
    for(int i=0;i!=n;++i){
        for(int j=0;j!=n;++j){
            if(prime[a[i]+b[j]]) add_edge(i+1,j+1);
        }
    }
    int ans=0;
    for(int i=1;i<=n;++i){
        vector<bool> vis(N,false);
        if(find(i,vis)) ans++;
    }
    cout<<ans<<endl;
    return 0;
}

相关文章:

  • 调用feapder作为子程序时setting.py文件不起作用
  • C++标准库新部件:解锁编程新姿势
  • win注册表提示没有权限进行修改的解决方式
  • (十)方法的定义 方法的作用域
  • 玩客云 armbian 安装mqtt服务端
  • 关于IPC sensor条纹问题分析
  • 在Kubernetes 1.26 上使用 StatefulSet 部署 MySQL8
  • 一文速通Python并行计算:00 并行计算的基本概念
  • 【论文笔记】生成对抗网络 GAN
  • 深入探究 JVM 堆的垃圾回收机制(二)— 回收
  • 【人工智能】Ollama 的 API 操作指南:打造个性化大模型服务
  • 《鸟哥的Linux私房菜基础篇》---5 vim 程序编辑器
  • 探秘文件系统变RAW:数据拯救全解析
  • 一道原创OI题(普及-)——ZCS的随机游走
  • 如何优化sql事务隔离带来的性能问题
  • 记一次wsl2+docker无法运行的经历
  • Chrome-Edge-IDEA-Win 常用插件-工具包
  • jaeger安装和简单使用
  • 简化神经元总结
  • JMeter对API接口进行压力测试使用教程
  • 王毅谈金砖国家反恐和网络安全合作
  • 中国强镇密码丨洪泽湖畔的蒋坝,如何打破古镇刻板印象
  • 水利部将联合最高检开展黄河流域水生态保护专项行动
  • 欢迎回家!神十九返回舱成功着陆
  • 招商蛇口:一季度营收约204亿元,净利润约4.45亿元
  • 习近平对辽宁辽阳市白塔区一饭店火灾事故作出重要指示