CodeTON Round 9 (Div. 1 + Div. 2, Rated, Prizes!)(前五道)

A. Shohag Loves Mod

翻译:

        Shohag 有一个整数 n。请帮他找出一个递增整数序列 1\leq a_{1}\leq a_{2}\leq...\leq a_{n}\leq 100,使得 a_{i}\ mod \ i\neq a_{j}\ mod\ j 在所有 1\leq i \leq j\leq n 的对上都满足。
可以证明,在给定的约束条件下,这样的序列总是存在的。

思路:

每个数为下标i*2-1(注意这里下标i从1开始),这样每个数取余得到的是下标i-1必定不同,且当i=50时,a_{i}为99在范围内符合条件。

实现:

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
// using pll = pair<ll,ll>;void solve(){ll n;    cin>>n;for (int i=1;i<=n;i++){if (i!=1) cout<<" ";cout<<2*i-1;}cout<<endl;
}
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);// 中间填保留几位小数,不填默认// cout.precision();ll t;cin>>t;while (t--) solve();}

B. Shohag Loves Strings

 翻译:

        对于字符串p,令f(p)为p不同非空子串的数量。

        Shohag有一个字符串s。帮他找到一个s的非空子字符串p并且f(p)为偶数或者声明不存在这样的子字符串。

思路:

什么样的字符串符合条件?

        两个连续的字符aa,f(aa)=2;两个不同的ab为f(ab)=3。

        三个字符互不相同abc,f(abc)=6;除中间外都相同aba,f(aba)=5。

        四个字符时,能否在三个字符不行时行,加中间的字符abab,f(abab)=7;

综上:当存在两个连续字符或三个互不相同字符时,为解。

实现:

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
// using pll = pair<ll,ll>;void solve(){string s;cin>>s;int n = s.size();for (int i=0;i<n;i++){if (i!=0 && i!=n-1){if (s[i]!=s[i-1] && s[i]!= s[i+1] && s[i-1]!=s[i+1]){cout<<s.substr(i-1,3)<<endl;return;}}if (i!=n-1){if (s[i]==s[i+1]){cout<<s.substr(i,2)<<endl;return;}}} cout<<-1<<endl;
}
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);// 中间填保留几位小数,不填默认// cout.precision();ll t;cin>>t;while (t--) solve();}

C1. Shohag Loves XOR (Easy Version)

 翻译:

        Shohag有两个整数x和m。帮他统计整数y(1\leq y\leq m)的数量,y要如下x\neq yx\oplus y是x,y或两者的因子。

思路:

        设a为x的二进制最高位,b为y的二进制最高位。

        1.当a<b时:p=x\oplus y\in[2^b,2^{b+1}),要成为p的倍数范围要在[2^{b+1},2^{b+2})明显x,y都达不到。

        2.当a>b时:p=x\oplus y\in[2^a,2^{a+1}),要成为p的倍数范围要在[2^{a+1},2^{a+2})明显x,y都达不到。

        综上暴力遍历[2^{a},min(2^{a+1},m+1))范围即可。

实现:

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
// using pll = pair<ll,ll>;void solve(){ll x,m,ans = 0;   cin>>x>>m;ll tmp = x,cnt = 0;while (tmp){tmp/=2;cnt++;}// cout<<"-----"<<cnt<<endl;// cout<<" ---- "<<(ll)pow(2,cnt-1)<<endl;for (ll y=(ll)pow(2,cnt-1);y<min((ll)pow(2,cnt),m+1);y++){if (x==y) continue;ll xy = x^y;if (y%xy==0 || x%xy==0){ans++;}}cout<<ans<<endl;
}
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);// 中间填保留几位小数,不填默认// cout.precision();ll t;cin>>t;while (t--) solve();}

C2. Shohag Loves XOR (Hard Version)

翻译:

        Shohag有两个整数x和m。帮他统计整数y(1\leq y\leq m)的数量,y要如下x\oplus y可被x,y或两者整除。

思路:

分三种情况讨论:

  1. x^y可被x整除
    1. 令p=x^y => y=x^p,问题也就变为求能被x整除且1\leq x \oplus p\leq m
    2. 又易得p-x\leq x\oplus y\leq p+x,可由异或性质得出
    3. x+p\leq m\Rightarrow p\leq m-x,p的数量为\lfloor \frac{m-x}{x} \rfloor
    4. x+p> m\Rightarrow p> m-xp-x<=m\Rightarrow p\leq x+mp\in(m-x,m+x],在此找x的倍数即可。
  2. x^y可被y整除
    1. 当y>x时,x^y<y+y=2y。而y的最小倍数也要2y,所以不可能。
    2. 从1遍历到min(m,x)即可。
  3. x^y可被x和y整除
    1. x\neq y时,x^y>lcm(x,y)>=2*max(x,y);而x^y<2*max(x,y),不可能。
    2. 只有当x=y时,符合条件

答案为情况1+情况2-情况3

代码:

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
// using pll = pair<ll,ll>;void solve(){ll x,m,ans=0;cin>>x>>m; // case 1  ll p = m-m%x; ans = p/x-(p>x);if ((x ^ p) >= 1 and (x ^ p) <= m) ans++;p += x;if ((x ^ p) >= 1 and (x ^ p) <= m) ans++;// case 2for (ll y=1;y<=min(x,m);y++){if ((y^x)%y==0) ans++;}// case 3if (x<=m) ans--;cout<<ans<<endl;
}
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);// 中间填保留几位小数,不填默认// cout.precision();ll t;cin>>t;while (t--) solve();}

D. Shohag Loves GCD

翻译:

        Shohag有一个整数 n 和一个由 m 个唯一整数组成的集合 S。请帮他找出一个字典序上最大的整数数组 a_{1},a_{2}...,a_{n},使得每个 1≤i≤n 的数组 ai∈S,并且在所有 1≤i<j≤n 的数组对中满足 a_{gcd(i,j)}\neq gcd(a_{i},a_{j}),或者指出不存在这样的数组。

思路:

贪心,令当前位置i下标的所有倍数上的数都比当前位置的值小一位。可满足a_{gcd(i,j)}\neq gcd(a_{i},a_{j})

代码:

#include<bits/stdc++.h>
using namespace std;
using ll = long long;
// using pll = pair<ll,ll>;
vector<ll> S(1e5+10);
void solve(){ll n,m;cin>>n>>m;for (int i=1;i<=m;i++){cin>>S[i];}vector<ll> ans(n+1,m-1);ans[1] = m;for (int i=2;i<=n;i++){if (ans[i]<1){cout<<-1<<endl;return;}for (int j=i*2;j<=n;j+=i){ans[j] = ans[i]-1;}}for (int i=1;i<=n;i++){if (i!=1) cout<<" ";cout<<S[ans[i]];}cout<<endl;
}
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);// 中间填保留几位小数,不填默认// cout.precision();ll t;cin>>t;while (t--) solve();}

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

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

相关文章

数据结构之二:表

顺序表代码&#xff1a;SData/SqList/SeqList.h Hera_Yc/bit_C_学习 - 码云 - 开源中国 链表相关代码&#xff1a;SData/ListLink/main.c Hera_Yc/bit_C_学习 - 码云 - 开源中国 leetcode相关代码leetcode/reverse_Link/main.c Hera_Yc/bit_C_学习 - 码云 - 开源中国 本文…

Adaboost集成学习 | Python实现基于NuSVR-Adaboost多输入单输出回归预测

目录 效果一览基本介绍程序设计参考资料效果一览 基本介绍 基于NuSVR-Adaboost多输入单输出回归预测python代码 NuSVR是一种支持向量回归(SVR)算法的变体,用于解决回归问题。SVR是一种监督学习方法,它用于预测连续目标变量,而不是分类标签。NuSVR在SVR的基础上引入了一个…

Vue.js --- 生命周期

1. 前言 在 Vue.js 中&#xff0c;生命周期是指一个 Vue 实例从创建到销毁的过程。Vue 提供了一系列的生命周期钩子&#xff08;lifecycle hooks&#xff09;&#xff0c;让开发者可以在不同的阶段执行特定的代码。了解这些生命周期钩子是构建 Vue 组件的基础&#xff0c;能够…

排序算法之选择排序篇

思想&#xff1a; 每次从未排序的部分找出最小的元素&#xff0c;将其放到已排序部分的末尾 从数据结构中找到最小值&#xff0c;放到第一位&#xff0c;放到最前面&#xff0c;之后再从剩下的元素中找出第二小的值放到第二位&#xff0c;以此类推。 实现思路&#xff1a; 遍…

hive的cascade使用解释

最近看到涉及到hive表字段新增&#xff0c;项目组其他人员让我add columns后加 cascade&#xff0c;这个我以前见到过&#xff0c;但是我一般没有用&#xff0c;也没出问题&#xff0c;那就研究下。 网上大多数的说法就是分区表加字段需要级联&#xff0c;原因是&#xff0c;你…

聊聊Flink:这次把Flink的触发器(Trigger)、移除器(Evictor)讲透

一、触发器(Trigger) Trigger 决定了一个窗口&#xff08;由 window assigner 定义&#xff09;何时可以被 window function 处理。 每个 WindowAssigner 都有一个默认的 Trigger。 如果默认 trigger 无法满足你的需要&#xff0c;你可以在 trigger(…) 调用中指定自定义的 tr…

docker部署nginx,并配置SSL证书

、拉取nginx镜像 docker pull nginx:latest 在此过程中会遇到网络的问题&#xff0c;导致镜像无法下载&#xff0c;这时候需要在服务器中配置下国内的镜像地址。下面包含近期最新的国内镜像&#xff0c;截至2024年11月27日&#xff1a; "https://<你的阿里云账号ID&…

OceanBase 大数据量导入(obloader)

现需要将源数据库&#xff08;Oracle|MySQL等&#xff09;一些表的海量数据迁移到目标数据库 OceanBase 中&#xff0c;基于常规 jdbc 驱动编码的方式涉及开发工作&#xff0c;性能效率也要看编码的处理机制。 OceanBase 官方提供了的 OceanBase Migration Service (OMS) 数据…

【Spring MVC】如何获取cookie/session以及响应@RestController的理解,Header的设置

前言 &#x1f31f;&#x1f31f;本期讲解关于SpringMVC的编程之参数传递~~~ &#x1f308;感兴趣的小伙伴看一看小编主页&#xff1a;GGBondlctrl-CSDN博客 &#x1f525; 你的点赞就是小编不断更新的最大动力 &#x1f386;那么废…

【详细介绍及演示】Flink之checkpoint检查点的使用

目录 一、介绍 二、 设置checkpoint检查点演示 1、 代码演示 2、测试代码效果 3、查看快照情况 ​编辑 三、在集群上运行 1、第一次运行 2、第二次运行 四、自定义检查点savePoint 1、提交一个flink job 打成jar包 2、输入一些数据&#xff0c;观察单词对应的数字的…

JAVA篇05 —— 内部类(Local、Anonymous、Member、Static)

欢迎来到我的主页&#xff1a;【一只认真写代码的程序猿】 本篇文章收录于专栏【小小爪哇】 如果这篇文章对你有帮助&#xff0c;希望点赞收藏加关注啦~ 目录 1 内部类Inner Class 1.1 局部内部类 1.2 匿名内部类&#xff08;※※&#xff09; 1.3 匿名类最佳实践&#xf…

Spring Boot 与 Spring Cloud Alibaba 版本兼容对照

版本选择要点 Spring Boot 3.x 与 Spring Cloud Alibaba 2022.0.x Spring Boot 3.x 基于 Jakarta EE&#xff0c;javax.* 更换为 jakarta.*。 需要使用 Spring Cloud 2022.0.x 和 Spring Cloud Alibaba 2022.0.x。 Alibaba 2022.0.x 对 Spring Boot 3.x 的支持在其发行说明中…

jsp的pageContext对象

jsp的pageContext对象 是页面的上下文对象&#xff0c;表示当前页面运行环境&#xff0c;用于获取当前页面jsp页面信息&#xff0c;作用范围为当前的jsp页面 pageContext对象可以访问当前页面的所有jsp内置对象 jsp的四种内置对象 4中作用域&#xff1a;pagecontext,request…

网络安全在数字时代保护库存数据中的作用

如今&#xff0c;通过软件管理库存已成为一种标准做法。企业使用数字工具来跟踪库存水平、管理供应链和规划财务。 然而&#xff0c;技术的便利性也带来了网络威胁的风险。黑客将库存数据视为有价值的目标。保护这些数据不仅重要&#xff0c;而且必不可少。 了解网络安全及其…

Python图像处理:打造平滑液化效果动画

液化动画中的强度变化是通过在每一帧中逐渐调整液化效果的强度参数来实现的。在提供的代码示例中&#xff0c;强度变化是通过一个简单的线性插值方法来控制的&#xff0c;即随着动画帧数的增加&#xff0c;液化效果的强度也逐渐增加。 def liquify_image(image, center, radius…

day2全局注册

全局注册代码&#xff1a; //文件核心作用&#xff1a;导入App.vue,基于App.vue创建结构渲染index.htmlimport Vue from vue import App from ./App.vue //编写导入的代码&#xff0c;往代码的顶部编写&#xff08;规范&#xff09; import HmButton from ./components/Hm-But…

wireshark基础

免责声明&#xff1a; 笔记的只是方便各位师傅学习知识&#xff0c;以下代码、网站只涉及学习内容&#xff0c;其他的都与本人无关&#xff0c;切莫逾越法律红线&#xff0c;否则后果自负。 泷羽sec官网&#xff1a;https://longyusec.com/ 泷羽sec B站地址&#xff1a;https:/…

学习笔记037——Java中【Synchronized锁】

文章目录 1、修饰方法1.1、静态方法&#xff0c;锁定的是类1.2、非静态方法&#xff0c;锁定的是方法的调用者&#xff08;对象&#xff09; 2、修饰代码块&#xff0c;锁定的是传入的对象2.1、没有锁之前&#xff1a;2.2、有锁后&#xff1a; 实现线程同步&#xff0c;让多个线…

⭐️ GitHub Star 数量前十的工作流项目

文章开始前&#xff0c;我们先做个小调查&#xff1a;在日常工作中&#xff0c;你会使用自动化工作流工具吗&#xff1f;&#x1f64b; 事实上&#xff0c;工作流工具已经变成了提升效率的关键。其实在此之前我们已经写过一篇博客&#xff0c;跟大家分享五个好用的工作流工具。…

智能桥梁安全运行监测系统守护桥梁安全卫士

一、方案背景 桥梁作为交通基础设施中不可或缺的重要组成部分&#xff0c;其安全稳定的运行直接关联到广大人民群众的生命财产安全以及整个社会的稳定与和谐。桥梁不仅是连接两地的通道&#xff0c;更是经济发展和社会进步的重要纽带。为了确保桥梁的安全运行&#xff0c;桥梁安…