新闻详情

新闻详情

首页 / 资讯中心 / 详情

牛客周赛R159

发布时间:2026/9/4 17:27:32来源:尧图网络
牛客周赛R159
A 小月的模块签到#include bits/stdc.h using namespace std; #define IOS ios::sync_with_stdio(false),cin.tie(0); #define endl \n #define pb push_back #define dbg(x) std::cout#x:x #define int long long typedef pairint,int PII; const int N200; int n,k,s; int a[N]; void solve() { cinnks; if(n0)coutk; else couts; } signed main() { IOS int T1;//cinT; while(T--) solve(); return 0; }B 小月的信号一直除以2记录第一个和最后一个1和1的个数#include bits/stdc.h using namespace std; #define IOS ios::sync_with_stdio(false),cin.tie(0); #define endl \n #define pb push_back #define dbg(x) std::cout#x:x #define int long long typedef pairint,int PII; const int N200; int n,sum,mx,mi; int a[N]; void solve() { cinn; sum0;mxmi-1; int cnt0; while(n){ if(n%2){ if(mi-1)micnt; mxcnt; sum; } n/2; cnt; } coutsum mi mx; } signed main() { IOS int T1;//cinT; while(T--) solve(); return 0; }C 小月的灯带前缀和数组二分查找所在区间#include bits/stdc.h using namespace std; #define IOS ios::sync_with_stdio(false),cin.tie(0); #define endl \n #define pb push_back #define dbg(x) std::cout#x:x #define int long long typedef pairint,int PII; const int N200100; int n,q,b; int a[N]; void solve() { cinnqb;a[0]0; for(int i1;in;i){ cina[i]; a[i]a[i-1]; } while(q--){ int tp; cintp; int cntlower_bound(a1,an1,tp)-a; if(b){ if(cnt%2)cout1 cnt tp-a[cnt-1]; else cout0 cnt tp-a[cnt-1]; } else{ if(cnt%20)cout1 cnt tp-a[cnt-1]; else cout0 cnt tp-a[cnt-1]; } coutendl; } } signed main() { IOS int T1;//cinT; while(T--) solve(); return 0; }D 小月的校验码存入unordered_map枚举每一种情况通过ump查找#include bits/stdc.h using namespace std; #define IOS ios::sync_with_stdio(false),cin.tie(0); #define endl \n #define pb push_back #define dbg(x) std::cout#x:x #define int long long typedef pairint,int PII; const int N200100; int n,m; string a[N]; int num[N]; unordered_mapstring,intmp; void solve() { cinnm; memset(num,0,sizeof(num)); int sum0; for(int i1;in;i){ cina[i]; mp[a[i]]i; for(int j1;jm;i){ string tpa[j]; if(tp[j]1)tp[j]0; else tp[j]1; auto it mp.find(tp); if(it ! mp.end()){ sum; num[j]; } } } coutsumendl; for(int i1;im;i){ coutnum[i] ; } } signed main() { IOS int T1;//cinT; while(T--) solve(); return 0; }E 小月的前缀集合通过ump模拟整个过程#include bits/stdc.h using namespace std; #define IOS ios::sync_with_stdio(false),cin.tie(0); #define endl \n #define pb push_back #define dbg(x) std::cout#x:x #define int long long typedef pairint,int PII; const int N200100; int n,sum; string a[N]; unordered_mapstring,intmp; void in(string s){ int ls.length(); for(int i1;il;i){ string tp s.substr(0,i); auto it mp.find(tp); if(it ! mp.end()){ int tmpit-second; mp[tp]tmp1; }else{ sum; mp[tp]1; } } } void out(string s){ int ls.length(); for(int i1;il;i){ string tp s.substr(0,i); auto it mp.find(tp); if(it ! mp.end()){ int tmpit-second; if(tmp 1){ sum--; mp.erase(it); }else{ mp[tp]tmp-1; } } } } void solve() { cinn; mp.clear(); sum 0; for(int i1;in;i){ char op; cinopa[i]; if(op ) in(a[i]); else out(a[i]); coutsumendl; } } signed main() { IOS int T1; while(T--) solve(); return 0; }F 小月的路径码树上差分、欧拉序、树状数组#include bits/stdc.h using namespace std; #define IOS ios::sync_with_stdio(false),cin.tie(0); #define endl \n #define pb push_back #define dbg(x) std::cout#x:x #define int long long typedef pairint,int PII; const int N200100; const int MOD1e97; int n,q; string s; int szsz[N]; int quan[N]; vectorvectorint graph; int dfn[N]; int rt[N]; int h[N];//深度 int cc1; void Add(int x,int v){ while(xn){ szsz[x]v; xx-x; } } int Pre(int x){ int res0; while(x){ resszsz[x]; xx-1; } return res; } void DFS(int x,int fa){ dfn[x]cc; cc; for(const auto y:graph[x]){ if(y!fa){ h[y]h[x]1; DFS(y,x); } } rt[x]cc; if(s[x]1){ Add(dfn[x],quan[h[x]]); Add(cc,-quan[h[x]]); } } void solve() { cinnqs; s s; graph.resize(n1); //存图 for(int i1;in;i){ int u,v; cinuv; graph[u].push_back(v); graph[v].push_back(u); } //预处理权值 quan[0]1; for(int i1;in;i){ quan[i]quan[i-1]1; if(quan[i]MOD){ quan[i]-MOD; } } DFS(1,0); while(q--){ int u; char op; cinopu; if(opF){ if(s[u]0){ Add(dfn[u],quan[h[u]]); Add(rt[u],-quan[h[u]]); s[u]1; } else{ Add(dfn[u],-quan[h[u]]); Add(rt[u],quan[h[u]]); s[u]0; } continue; } coutPre(dfn[u])%MODendl; } } signed main() { IOS int T1; while(T--) solve(); return 0; }
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

P95 与 P99 延迟尖刺排查:慢请求到底是慢在召回还是模型生成 2026/9/4 22:23:20

P95 与 P99 延迟尖刺排查:慢请求到底是慢在召回还是模型生成

P95 与 P99 延迟尖刺排查:慢请求到底是慢在召回还是模型生成在大模型问答(RAG)生产系统的日常巡检中,监控大盘上最刺眼的数据莫过于:平均延迟(Avg Latency)明明只有 350ms,但 P99 延…

阅读更多 →
分块大小对上下文填充的影响:Token 预算与信息密度的平衡 2026/9/4 22:23:20

分块大小对上下文填充的影响:Token 预算与信息密度的平衡

分块大小对上下文填充的影响:Token 预算与信息密度的平衡在优化 RAG 问答质量时,很多工程师常常面临一个艰难的取舍:给大模型投喂的上下文到底该切多大? 如果分块设得小(如 256 Token),在有限的…

阅读更多 →
从“纯手工大模型”到本地部署:图灵测试与可信AI的工程真相 2026/9/4 22:23:20

从“纯手工大模型”到本地部署:图灵测试与可信AI的工程真相

这轮因为“纯手工跑大模型”引发的网络群聊,可能是近期最值得技术人停下来多想一会儿的现象。一个真人躲在聊天框后面,用逐字敲击的方式扮演AI助手,结果把不少网友聊到破防:有人对着屏幕道谢,有人反复追问“你到底是不…

阅读更多 →
AI推理加速14倍?拆解模型提速的六种尺子与验证方法 2026/9/4 22:23:20

AI推理加速14倍?拆解模型提速的六种尺子与验证方法

第一次看到“GPT-5.6 Sol 被 OpenAI 加速 14 倍”这条讨论时,我的第一反应不是兴奋,而是先找尺子:这里的 14 倍,到底是在哪一层量出来的?在模型圈待久了会发现,一个“加速 N 倍”的数字,经常可以…

阅读更多 →
基于51单片机与Proteus的货车侧翻检测系统仿真全流程解析 2026/9/4 22:23:20

基于51单片机与Proteus的货车侧翻检测系统仿真全流程解析

简介:本资源是一套面向嵌入式初学者与课程设计者的51单片机实践项目,聚焦货车侧翻风险实时监测这一典型安全应用场景。系统以Proteus仿真为核心,通过滑动变阻器模拟车身两侧高度差,实现倾斜度阈值可设、超限自动报警与模拟刹车功能…

阅读更多 →
Fastbin Dup 利用原理与双重释放(Double Free)缓解机制演进 2026/9/4 22:20:20

Fastbin Dup 利用原理与双重释放(Double Free)缓解机制演进

Fastbin Dup 利用原理与双重释放(Double Free)缓解机制演进在 Linux glibc 堆内存管理机制中,Fastbin 是为了加速小尺寸内存分配而设立的单向无头链表结构。早期二进制利用中,Fastbin Dup 作为最基础且威力巨大的堆利用手法之一&a…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞