2023湖南省赛

​​​​​​连接

目录

A:开开心心233

B:Square Game

C:室温超导

F:necklace

K:tourist


补题中,会给出大部分代码

A:开开心心233

签到题 ,无论二分还是解方程还是直接for循环枚举都能直接通过啦

signed main()
{ios_base::sync_with_stdio(0); cin.tie(0),cout.tie(0);int n,m;cin>>n>>m;
//	cout<<-3+sqrt(3*3+4*2*(n+m))<<'\n';int res1=n-(-3+sqrt(3*3+4*2*(n+m)))/2;int res2=n-(-3-sqrt(3*3+4*2*(n+m)))/2;if(res1<=n&&res1>=0) cout<<res1;else cout<<res2;
}

B:Square Game

#define f first
#define s second
const int N=1e6+5;
int f[N];
void init()
{for(int i=1;i<N;i++){int q=sqrt(i);map<int,bool>mp;if(q*q==i||q*q+1==i){for(int j=0;j<i;j+=q){mp[f[j]]=1;}int cnt=0;for(auto w:mp){if(w.f==cnt) cnt++;else break;}f[i]=cnt;}else{f[i]=f[i-1];}}
}
signed main() {ios_base::sync_with_stdio(0);cin.tie(0),cout.tie(0);init();int n;cin>>n;int sum=0;for(int i=1;i<=n;i++){int x;cin>>x;sum^=f[x];}if(sum==0){cout<<"Second\n";}else{cout<<"First\n";}
}

C:室温超导

#define int long long
#define f first
#define s second
const int N = 500000 + 5;
char str[N];
struct Node
{int len, fa;int ch[26];
}node[N*4];
int tot = 1, last = 1;
int summ = 0;//不同的子串数
void extend(int c)
{int p = last, np = last = ++tot;node[np].len = node[p].len + 1;for (; p && !node[p].ch[c]; p = node[p].fa) node[p].ch[c] = np;if (!p) {node[np].fa = 1; summ += node[np].len - node[node[np].fa].len;}else{int q = node[p].ch[c];if (node[q].len == node[p].len + 1) { node[np].fa = q; summ += node[np].len - node[node[np].fa].len; }else {int nq = ++tot;summ -= node[q].len - node[node[q].fa].len;node[nq] = node[q], node[nq].len = node[p].len + 1;node[q].fa = node[np].fa = nq;summ += node[q].len - node[node[q].fa].len;summ += node[np].len - node[node[np].fa].len;summ += node[nq].len - node[node[nq].fa].len;for (; p && node[p].ch[c] == q; p = node[p].fa) node[p].ch[c] = nq;}}
}
signed main() {ios_base::sync_with_stdio(0);cin.tie(0), cout.tie(0);int n, m;cin >> n >> m;cin >> str + 1;string t;cin >> t;t = ' ' + t;vector<int>sum(30);int all = 0;//int summ = 0;;for (int i = 1; i <= n - m + 1; i++) {int pre_tot = summ;extend(str[i] - 'a');//	summ = 0;//	for (int j = 2; j <= tot; j++) {//		summ += node[j].len - node[node[j].fa].len;//	}sum[str[i] - 'a'] += (summ - pre_tot);}all += summ;for (int i = n - m + 2; str[i]; i++) {int j = i - (n - m);int pre_tot = summ;extend(str[i] - 'a');//	summ = 0;//	for (int j = 2; j <= tot; j++) {//		summ += node[j].len - node[node[j].fa].len;//	}sum[str[i] - 'a'] += (summ - pre_tot);all += summ;all -= sum[t[j - 1] - 'a'];if (sum[t[j - 1] - 'a']) all++;}cout << all;
}

F:necklace

const int inf=0x3f3f3f3f;
int change[410][410];signed main()
{ios_base::sync_with_stdio(0); cin.tie(0),cout.tie(0);memset(change,0x3f,sizeof change);int n,m;cin>>n>>m;vector<int>s(n),t(n);for(int i=0;i<n;i++){cin>>s[i];}for(int i=0;i<n;i++){cin>>t[i];}while(m--){int a,b,c;cin>>a>>b>>c;change[a][b]=min(change[a][b],c);}for(int k=1;k<=400;k++){for(int i=1;i<=400;i++){for(int j=1;j<=400;j++){change[i][j]=min(change[i][j],change[i][k]+change[k][j]);}}}bool ok=0;int tot=inf;for(int i=0;i<n;i++){int sum=0;bool flag=1;for(int j=0;j<n;j++){if(s[j]==t[(i+j)%n]) continue;int p=inf;p=min(change[s[j]][t[(i+j)%n]],p);p=min(change[t[(i+j)%n]][s[j]],p);if(p>=inf){flag=0;break;				}sum+=p;}if(flag==0){
//			ok=0;
//			break;}else{ok=1;tot=min(tot,sum);}}if(!ok){cout<<-1<<'\n';}else{cout<<tot<<'\n';}
}

K:tourist

#define int long long
const int K=1<<7,mod=1e9+9;
int path[21][21];
int st[K];
int sz[10];
int siz(int x) {int cnt=0;while(x) {if(x&1) cnt++;x>>=1;}return cnt;
}
int a[21][21];
int f[21];
int n,m,k,d;
void mul(int f[],int a[21][21]) {int c[21]= {0};for(int j=1; j<=n; j++) {for(int k=1; k<=n; k++) {c[j]=(c[j]+f[k]*a[k][j])%mod;}}memcpy(f,c,sizeof c);
}
void mulself(int a[21][21]) {int c[21][21]= {0};for(int i=1; i<=n; i++) {for(int j=1; j<=n; j++) {for(int k=1; k<=n; k++) {c[i][j]=(c[i][j]+a[i][k]*a[k][j])%mod;}}}memcpy(a,c,sizeof c);
}
signed main() {ios_base::sync_with_stdio(0);cin.tie(0),cout.tie(0);cin>>n>>m>>k>>d;d--;for(int i=0; i<k; i++) {int x;cin>>x;st[(1ll<<i)]=x;}while(m--) {int u,v;cin>>u>>v;path[u][v]=1;path[v][u]=1;}for(int i=0; i<(1ll<<k); i++) {int size=siz(i);memcpy(a,path,sizeof path);for(int j=0; j<k; j++) {if((i>>j)&1) {int p=st[(1ll<<j)];for(int k=1; k<=n; k++) {a[p][k]=0;a[k][p]=0;}}}for(int ii=1; ii<=n; ii++) {f[ii]=1;}int dd=d;for(; dd; dd>>=1) {if(dd&1) mul(f,a);mulself(a);}for(int j=1; j<=n; j++) {sz[size]+=f[j];sz[size]%=mod;}}int sum=0;for(int i=0; i<=k; i++) {if(i%2==0) {sum+=sz[i];sum%=mod;} else {sum=(sum-sz[i]+mod)%mod;}}cout<<sum<<'\n';
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/175202.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hadoop3.3.4分布式安装

安装前提&#xff1a;已经配置好java环境&#xff0c;所有机器之间ssh的免密登录。 注意&#xff1a;下文中的flinkv1、flinkv2、flinkv3是三台服务器的别名 1.集群部署规划 注意&#xff1a;NameNode和SecondaryNameNode不要安装在同一台服务器 注意&#xff1a;ResourceMan…

【LLM】0x00 大模型简介

0x00 大模型简介 个人问题学习笔记大模型简介LLM 的能力&#xff1a;LLM 的特点&#xff1a; LangChain 简介LangChain 核心组件 小结参考资料 个人问题 1、大模型是什么&#xff1f; 2、ChatGPT 在大模型里是什么&#xff1f; 3、大模型怎么用&#xff1f; 带着问题去学习&a…

2023年03月 Python(五级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python等级考试(1~6级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 已知一个列表lst = [2,3,4,5,6],lst.append(20),print(lst)的结果是?( )(2分) A.[10,2,3,4,5,6,20] B.[20,2,10,3,4,5,6] C.[2,3,4,5,6,20] D.[2,3,4,5,6,10,20] 答案:C 第2…

接口测试vs功能测试

接口测试和功能测试的区别&#xff1a; 本文主要分为两个部分&#xff1a; 第一部分&#xff1a;主要从问题出发&#xff0c;引入接口测试的相关内容并与前端测试进行简单对比&#xff0c;总结两者之前的区别与联系。但该部分只交代了怎么做和如何做&#xff1f;并没有解释为什…

星宿UI2.51资源付费变现小程序 支持流量主广告投放

目前&#xff0c;最新版的星宿UI是2.51版本。要搭建星宿UI&#xff0c;您需要准备备用域名、服务器和微信小程序账号。星宿UI提供了多项功能&#xff0c;包括文章展示、文章分类、资源链接下载和轮播图等。此外&#xff0c;还支持直接下载附件功能。这些功能使得星宿UI非常适合…

中睿天下加入中关村华安关键信息基础设施安全保护联盟

近日&#xff0c;中睿天下正式加入中关村华安关键信息基础设施安全保护联盟&#xff0c;成为其会员单位。 中关村华安关键信息基础设施安全保护联盟是由北京市科学技术委员会、中关村科技园区管理委员会指导支持&#xff0c;经北京市民政局批准&#xff0c;于2023年8月正式注册…

离散卡尔曼滤波器算法详解及重要参数(Q、R、P)的讨论

公开数据集中文版详细描述参考前文&#xff1a;https://editor.csdn.net/md/?not_checkout1&spm1011.2124.3001.6192神经元Spike信号分析参考前文&#xff1a;https://blog.csdn.net/qq_43811536/article/details/134359566?spm1001.2014.3001.5501神经元运动调制分析参考…

uni-app报错“本应用使用HBuilderX x.x.x 或对应的cli版本编译,而手机端SDK版本是x.x.x不匹配的版本可能造成应用异常”

uniapp开发的一个跨平台软件&#xff0c;在安卓模拟器上启动的时候报警告&#xff1a; 官方给的解释&#xff1a;uni-app运行环境版本和编译器版本不一致的问题 - DCloud问答 解决办法有两个 方法一&#xff1a;添加忽略警告的配置 项目根目录下找到 manifest.json&#xf…

14——2

这道题目前面看不懂可以看比如后面的 这里1/3是因为S100的长度n3&#xff08;100占3位&#xff09;&#xff0c;然后1出现的占比是1/3&#xff08;1在第一位&#xff09;&#xff0c;0出现的占比是2/3&#xff0c;因为0出现了2次&#xff0c;&#xff08;第二位&#xff0c;第…

应用亚马逊云科技,Share Creators1个月内上线生成式AI生图模块

随着生成式AI在全球范围爆火&#xff0c;如何充分利用生成式AI自动生成内容提高创作效率已成为设计领域创新的关键突破口。对于设计行业和游戏行业的众多企业和团队而言&#xff0c;管理数字资产的能力是其实现高效创作最大的挑战之一&#xff0c;也是在降本增效的流程中非常容…

C语言之深入指针(四)

C语言之深入指针 1 函数指针变量 1.1 函数指针变量的创建 整型指针是存放整型数据的指针 数组指针是存放数组地址的指针 那么函数指针变量就是存放函数地址的指针&#xff0c;可以通过函数的地址来调用函数 那么函数是否有自己的地址呢?我们可以写一段代码来看一下 #incl…

hadoop 大数据环境配置 ssh免密登录 centos配置免密登录 hadoop(四)

1. 找到.ssh文件夹 cd ~ # 在.ssh文件夹下生成 # cd .ssh 2. 生成私钥公钥命令&#xff1a; ssh-keygen -t rsa3. 发送到需要免密机器&#xff1a; # hadoop23 是我做了配置。在host配置得机器ip和名称得映射 ssh-copy-id hadoop23 4. 成功