A5729 | Alice 的数学构造
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
给定正整数 $n$ 。设 $a$ 为 $\{1,2,\dots,n\}$ 的一个排列。定义前缀乘积序列
$$ b_1\equiv a_1\pmod n,\quad b_i\equiv b_{i-1}\cdot a_i\pmod n\ (2\le i\le n). $$
若 $b$ 恰好是 $\{0,1,\dots,n-1\}$ 的一个排列(每个余数出现且只出现一次),称该 $a$ 为可行。本题仅需判断是否存在可行排列。
$$ b_1\equiv a_1\pmod n,\quad b_i\equiv b_{i-1}\cdot a_i\pmod n\ (2\le i\le n). $$
若 $b$ 恰好是 $\{0,1,\dots,n-1\}$ 的一个排列(每个余数出现且只出现一次),称该 $a$ 为可行。本题仅需判断是否存在可行排列。
输入格式
- 第一行一个整数 $T$
- 接下来 $T$ 行,每行一个整数 $n$ 。
- 接下来 $T$ 行,每行一个整数 $n$ 。
输出格式
对每组数据输出一行:存在则输出
YES,否则输出 NO。输入输出样例
输入 #1
5 10 9 7 3 2
输出 #1
NO NO YES YES YES
输入 #2
5 3 2 9 11 15
输出 #2
YES YES NO YES NO
数据范围
* $1 \le n,t \le 10^6$
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?