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

【比赛记录】2025CSP+NOIP 冲刺模拟赛合集Ⅲ

2025CSP-S模拟赛67(CSP-S模拟42)

A B C D Sum Rank
60(70) 25 30 5 120 5/14(7/34)

A. 乘筛积

对于单次查询,我们可以直接枚举 \(x\) 算出对应的 \(y\) 贡献答案,时间复杂度 \(O(\frac{C}{\max(p,q)})\)。根号分治即可。

Code
#include<bits/stdc++.h>
#define int long long
#define il inline
using namespace std;
namespace asbt{
const int maxn=3e5+5,mod=998244353;
int n,m,kk,T,a[maxn],b[maxn],f[550][550];
il int solve(int p,int q,int *a,int *b,int n,int m){if(p<q){swap(p,q),swap(a,b),swap(n,m);}int ans=0;for(int i=1;i<=n&&i*p<=kk;i++){if((kk-i*p)%q==0){int j=(kk-i*p)/q;if(j>0&&j<=m){ans=(ans+a[i]*b[j])%mod;}}}return ans;
}
int main(){freopen("sedge.in","r",stdin);freopen("sedge.out","w",stdout);ios::sync_with_stdio(0),cin.tie(0);cin>>n>>m>>kk;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=m;i++){cin>>b[i];}for(int i=1;i<=547;i++){for(int j=1;j<=547;j++){f[i][j]=solve(i,j,a,b,n,m);}}cin>>T;while(T--){int p,q;cin>>p>>q;if(max(p,q)<=547){cout<<f[p][q]<<'\n';}else{cout<<solve(p,q,a,b,n,m)<<'\n';}}return 0;
}
}
signed main(){return asbt::main();}

B. 放进去

首先对于每个奢侈品单独考虑,不妨令 \(a_{i,p_1}\le a_{i,p_2}\le a_{i,p_3}\le\dots\le a_{i,p_m}\)。假设我们最终选的店铺集合是 \(S\),那么对于 \(i\) 我们必然选择 \(S\)\(a\) 最小(也就是最靠前)的 \(p_j\)。考虑差分,即对于所有 \(k<j\),给答案加上 \(a_{i,p_{k+1}}-a_{i,p_k}\)。考虑 SOSDP,于是我们只需要给所有 \(\{p_1,p_2,\dots,p_k\}\) 的答案加上 \(a_{i,p_{k+1}}-a_{i,p_k}\),最后再做一遍高维前缀和即可。记这个和为 \(f_S\)\(\sum_{i\in S}b_i=g_S\),于是 \(S\) 的答案即为 \(g_S+f_{\complement_US}\)。时间复杂度 \(O(nm\log m+m2^m)\),轻微卡常。

Code
#include<bits/stdc++.h>
#define int long long
#define il inline
using namespace std;
namespace asbt{
const int maxn=(1<<25)+5,inf=1e18;
il int pls(int x,int y){return x+y<inf?x+y:inf;
}
il void add(int &x,int y){x=pls(x,y);
}
int n,m,b[30],f[maxn],g[maxn];
struct node{int p,v;il bool operator<(const node &x)const{return v<x.v;}
}a[30];
int main(){freopen("putin.in","r",stdin);freopen("putin.out","w",stdout);ios::sync_with_stdio(0),cin.tie(0);cin>>n>>m;for(int i=1;i<=n;i++){for(int j=1;j<=m;j++){cin>>a[j].v;a[j].p=j;}sort(a+1,a+m+1);a[m+1]={m+1,inf};for(int j=1,S=0;j<=m+1;j++){
//			cout<<a[j].p<<' '<<a[j].v<<'\n';add(f[S],a[j].v-a[j-1].v);S|=1<<(a[j].p-1);}}for(int i=1;i<=m;i++){for(int S=0;S<1<<m;S++){if(S>>(i-1)&1){continue;}add(f[S|1<<(i-1)],f[S]);}}for(int i=1;i<=m;i++){cin>>b[i];}int ans=inf;for(int S=0;S<1<<m;S++){g[S]=pls(g[S^(S&-S)],b[__lg(S&-S)+1]);ans=min(ans,g[S]+f[((1<<m)-1)^S]);}cout<<ans;return 0;
}
}
signed main(){return asbt::main();}

C. 最长路径

D. 生成树的传说

http://www.jsqmd.com/news/25801/

相关文章:

  • Dynamics 365 online 按钮配置地址:/main.aspx?settingsonly=true
  • 替换法解方程5例
  • 什么是MII
  • 基于MATLAB的PIV(粒子图像测速) 实现方案
  • 祛魅与回归:对人工智能研究中“概念通胀”与“体系沉迷”的批判
  • 2025 年浴室柜厂家最新推荐榜,技术实力与市场口碑深度解析
  • 二分查找法
  • 2025 年卫浴厂家最新推荐榜,技术实力与市场口碑深度解析
  • 从餐馆迎客看 accept4:更灵活的“接客“高手 - 详解
  • 重生之我用AI写代码:前传——VSCode集成开源模型搭建智能开发环境
  • 2025年广东会议室话筒设备服务商权威推荐榜单:红外线会议话筒/会议麦克风扬声器/会议麦克风音响源头公司精选
  • 2025年口碑好的铜芯电缆公司排行榜:鑫佰亿线缆领跑行业
  • 2025年口碑好的铜芯电缆产品:鑫佰亿线缆(四川)有限公司领军行业
  • 2025年口碑好的铜芯电缆产品十大品牌权威推荐
  • 2025年口碑好的铜芯电缆品牌排行榜:鑫佰亿线缆引领行业品质革命
  • 2025年口碑好的铜芯电缆品牌推荐榜单
  • 2025年市面上新加坡留学品牌综合实力排行榜
  • 2025/10/27
  • 2025年电加热杀菌锅生产商权威推荐榜单:水浴式杀菌锅/高温高压杀菌锅/八宝粥杀菌锅源头厂家精选
  • 2025/10/28
  • 2025年口碑好的化工设备品牌排名前十
  • 2025年反应釜品牌排行榜:江苏永润反应釜荣获第一
  • 2025年换热器品牌综合评测:江苏永润换热器领跑行业
  • 2025年格宾重型石笼网厂商权威推荐榜单:格宾网钢丝石笼/铅丝石笼护坡/河堤石笼网源头厂商精选
  • 图片批量处理工具,适用于某些网站的上传要求
  • Java数据库应用原型
  • 2025:智能体元年|国内智能体培训机构优劣势对比
  • 2025 年注塑机定制厂家最新推荐榜,技术实力与市场口碑深度解析,甄选高精度节能优质品牌专用注塑机/瓶盖专用注塑机/电动工具专用注塑机公司推荐
  • 2025年小红书代运营/营销/推广/种草/探店推荐榜:广州布马五星领跑!全链路种草 + 数据转化,另2家公司凭垂类 / 联动 / 性价比显实力
  • MySQL统计分析binlog的数量与大小