信息竞赛2024年第三次csp-j模拟测试赛后总结

目录

一.第一题:孤独的数列 (lonely)

二.第二题:五颜六色 (color)

三.第三题:获取字符串 (obtain)


首先自我反思,因为打错了freopen导致爆零,这是重大的失误,以后绝对不能再犯。

一.第一题:孤独的数列 (lonely)

题目描述:

某一天,你走在路上的时候,看到地上有一个 n 个非负整数组成的序列(a1​,a2​,…,an​)。

你很惊讶地发现:你总是能找到一个正整数 k,使得这个数列的任意 k 个连续正整数的按位或的结果都相同!也就是说,对于所有的(i,j)((1≤i,j≤n−k+1)),都有:

​ [​ai​∣ai+1​∣…∣ai+k−1​=aj​∣aj+1​∣…∣aj+k−1​​]

那么,我们定义能找到的最小的 k 就是这个序列的“孤独程度”。你的任务是找到给定的 T 个序列的每个序列的孤独程度。

题目思路:

暴力枚举k的所有可能,一旦这k为按位或运算的结果一直相同,就直接输出。

错因:

忘了按位或运算是什么了(上课不够认真,该罚!)

正确代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=2e5+1;
int t,n,a[N],x[N];
int read(){//快读
	int ans=0,j=1;char c=getchar();
	while(c>'9' or c<'
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值