这套题感觉质量很高,思维含量大概div.2?

A.Battle

\[x \equiv r(\bmod P)
\]
\[P \mid x - r
\]

因此只有第一次操作是有效的。

void solve() {
int n, m, p;
cin >> n >> m >> p;
m -= m % p;
if(!m) puts("Alice");
else {
n -= n % p;
if(!n) puts("Bob");
else puts("Lasting Battle");
}
}

B.Change

题目大意:\(x\) 初始为 \(0\),给定 \(a, b, c, P\),可进行如下操作,

  • \(x \leftarrow (x + b) \bmod P\)
  • \(x \leftarrow (x \times a) \bmod P\)

问能否通过正整数次操作将 \(x\) 变为 \(c\)。

考虑将问题划分为两大类。

case1:\(c= 0\),显然成立。

case2:\(c \neq 0\)

如果 \(b = 0\),则一定无解,因为不管怎么操作 \(x\) 始终为 \(0\)。

如果 \(b \neq 0\),可以使 \(x = kb\),

我们令 \(k = inv(b) \times c\),其中 \(inv(b)\) 为 \(b\) 在模 \(P\) 意义上的逆元。

则 \(x = c\)

void solve() {
int P, a, b, c;
cin >> P >> a >> b >> c;
bool x = c && b;
bool y = !c;
bool ok = x || y;
puts(ok ? "Yes" : "No");
}

C.Xor with Gcd

不会推式子,所以直接找规律。

打表发现,对于任意奇数 \(n\),有

\[\gcd(1,n) \oplus \gcd(2,n) \oplus \cdots \oplus \gcd(n,n) = n
\]

奇数解决了,一个很直观的想法是偶数一定与其相邻的奇数有关。

继续打表。

然后就做完了。

void solve() {
ll n;
cin >> n;
if(n & 1) {
cout << n << '\n';
}
else {
ll t = (n + 1) / 2;
if(t & 1) -- t;
else ++ t;
cout << ((n + 1) ^ t) << '\n';
}
}

upd:更新正解。

由于 \(gcd(i, n) = gcd(n - i, n)\),

所以 \(n\) 为奇数时前后都消掉了,答案为 \(n\)。

而偶数还剩下 \(gcd(\dfrac{n}{2} , n)\) 和 \(gcd(n, n)\) 两项,答案为\(\dfrac{n}{2} \oplus n\)。

【LGR-170-Div.3】洛谷基础赛 #6 & Cfz Round 3 & Caféforces #2的更多相关文章

  1. 洛谷比赛 「EZEC」 Round 4

    洛谷比赛 「EZEC」 Round 4 T1 zrmpaul Loves Array 题目描述 小 Z 有一个下标从 \(1\) 开始并且长度为 \(n\) 的序列,初始时下标为 \(i\) 位置的数 ...

  2. 【LGR-(-8)】洛谷入门赛 #5 题解

    比赛链接 9道题. 注:题目名称中链接为题目链接,题号中链接为比赛内链接 题目编号 洛谷题号 题目名称 题目难度 A P5713 [深基3.例5]洛谷团队系统 \(\color{red}{入门}\) ...

  3. war2 洛谷模拟赛day2 t3 状压

    (new )   war2 题解:总体数据而言,我们很容易想到着就是DP啊,我们DP数组,用状态压缩,代表有那些点已经被占领过了,代表上一次我占的是那个.对于每一次状态转移,若当前我们要占领的Port ...

  4. 洛谷 P5594 【XR-4】模拟赛

    洛谷 P5594 [XR-4]模拟赛 洛谷传送门 题目描述 X 校正在进行 CSP 前的校内集训. 一共有 nn 名 OIer 参与这次集训,教练为他们精心准备了 mm 套模拟赛题. 然而,每名 OI ...

  5. 洛谷 P5089: CodeForces #500 (Div. 1) B / 1012B : Chemical table

    题目传送门:洛谷P5089. 题意简述: 一张 \(n \times m\) 的表格,有一些格子有标记,另外一些格子没有标记. 如果 \((r_1,c_1),(r_1,c_2),(r_2,c_1)\) ...

  6. 洛谷P1667/[10.22 模拟赛] 数列 (思维+模拟)

    洛谷P1667 数列 题目描述 给定一个长度是n的数列A,我们称一个数列是完美的,当且仅当对于其任意连续子序列的和都是正的.现在你有一个操作可以改变数列,选择一个区间[X,Y]满足\(A_X +A_{ ...

  7. 洛谷 P5518 - [MtOI2019]幽灵乐团 / 莫比乌斯反演基础练习题(莫比乌斯反演+整除分块)

    洛谷题面传送门 一道究极恶心的毒瘤六合一题,式子推了我满满两面 A4 纸-- 首先我们可以将式子拆成: \[ans=\prod\limits_{i=1}^A\prod\limits_{j=1}^B\p ...

  8. 洛谷 P5046 [Ynoi2019 模拟赛] Yuno loves sqrt technology I(分块+卡常)

    洛谷题面传送门 zszz,lxl 出的 DS 都是卡常题( 首先由于此题强制在线,因此考虑分块,我们那么待查询区间 \([l,r]\) 可以很自然地被分为三个部分: 左散块 中间的整块 右散块 那么这 ...

  9. [洛谷2397]yyy loves Maths VI

    题目背景 自动上次redbag用加法好好的刁难过了yyy同学以后,yyy十分愤怒.他还击给了redbag一题,但是这题他惊讶的发现自己居然也不会,所以只好找你 题目描述 他让redbag找众数他还特意 ...

  10. 【洛谷P1352】没有上司的舞会

    [洛谷P1352]没有上司的舞会 x舷售 锚」翅θ 但是 拙臃 蓄ⅶ榔 暄条熨卫 翘ヴ馇 表现无愧于雪月工作室的核心管理 爸惚扎掬 颇瓶 芟缆肝 貌痉了 洵┭笫装 嗝◇裴腋 褓劂埭 ...

随机推荐

  1. Python列表list 分片实例

    1 a = list(range(10)) 2 print(a[::]) #复制一个列表 3 print(a[::2]) #每隔2个取一次 4 print(a[::3]) #每隔3个取一次 5 6 p ...

  2. 6 JavaScript条件判断

    6 条件判断 除了HTML以外. 几乎所有的编程语言都有条件判断的功能. 比如, python, 我们用if语句来做条件判断. 到了javascript中也是一样的, 也使用javascript来做条 ...

  3. Codeforces Round #682 (Div. 2)

    CF1438A Specific Tastes of Andre 洛谷传送门 CF1438A 代码(全铺成1就可以了) #include <cstdio> #include <cct ...

  4. #拓扑排序#洛谷 4645 [COCI2006-2007 Contest#3] BICIKLI

    题目 这个地方有 \(n\) 个城镇,从 \(1\sim n\) 编号, 其中有 \(m\) 条单向道路连接它们. 比赛将在 \(1\) 号城镇开始并在 \(2\) 号城镇结束. 主办方想知道,一共有 ...

  5. OpenHarmony将携新成果亮相HDC2022

     第四届华为开发者大会 2022(Together)将于11月4日-6日在东莞召开,OpenAtom OpenHarmony(以下简称"OpenHarmony")将携新生态成果亮相 ...

  6. opengauss数据库-主从搭建

    opengauss 数据库-主从搭建 环境说明 软件下载 opengauss 下载地址:https://opengauss.org/zh/download/ 环境准备 关闭 SELINUX 修改 /e ...

  7. Java程序员常用英语整理

    基础----进阶 A. array数组accessible 可存取的 area面积audio 音频 addition 加法 action 行动 arithmetic 算法adjustment 调整 a ...

  8. c# 框架系列 ———— EFCore 模型篇 [一]

    前言 简单介绍一下EfCore 的模型篇 正文 内容来源: 配置模型 配置模型的方式,一种是fluent api 还一种是属性的方式. public class Blog { public int B ...

  9. 重新整理.net core 计1400篇[六] (.net core 一个简易版的依赖注入容器 )

    前言 我们了解到一个依赖注入的形式是: 注入依赖服务:var root = new Cat().Register<IFoo, Foo>(Lifetime.Transient); 获取对应的 ...

  10. leetcode:94. 二叉树的中序遍历

    94. 二叉树的中序遍历 给定一个二叉树,返回它的中序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,3,2] 进阶: 递归算法很简单,你可以通过迭代算法完成吗? ...