bzoj1406
这道题很有意思
我们解过线性同余方程,也解过同余方程
这个则是求x^2≡1 (mod p)
可以将问题转化为(x-1)(x+1)≡0 (mod p)
然后我们穷举一下p的约数i,
看i|x-1,p/i|x+1 或者i|x+1, p/i|x-1是否可行解
然后排序去重即可
var ans:array[..] of longint;
a,n,i,b,t:longint;
j:int64; procedure sort(l,r:longint);
var i,j,x,y:longint;
begin
i:=l;
j:=r;
x:=ans[(l+r) shr ];
repeat
while ans[i]<x do inc(i);
while x<ans[j] do dec(j);
if not(i>j) then
begin
y:=ans[i];
ans[i]:=ans[j];
ans[j]:=y;
inc(i);
j:=j-;
end;
until i>j;
if l<j then sort(l,j);
if i<r then sort(i,r);
end; begin
readln(n);
for i:= to trunc(sqrt(n)) do
if n mod i= then
begin
b:=n div i;
j:=;
while j<=n do
begin
if (j+) mod i= then
begin
inc(t);
ans[t]:=j;
end;
j:=j+b; //保证x-是b的倍数
end;
j:=b-;
while j<=n do
begin
if (j-) mod i= then
begin
inc(t);
ans[t]:=j;
end;
j:=j+b;
end;
end;
sort(,t);
for i:= to t do
if ans[i]<>ans[i-] then writeln(ans[i]);
end.
bzoj1406的更多相关文章
- BZOJ1406 [AHOI2007]密码箱 数论
欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1406 题意概括 求所有数x,满足 x<n 且 x2≡1 (mod n). n<=2 ...
- [BZOJ1406][AHOI2007]密码箱(数论)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1406 分析: (x+1)(x-1)是n的倍数 于是可以把n分解成n=ab,则a为(x+ ...
- 【BZOJ-1406】密码箱 约数 + 乱搞 + set?
1406: [AHOI2007]密码箱 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 1143 Solved: 677[Submit][Status][ ...
- bzoj1406: [AHOI2007]密码箱
数学. x^2 % n = 1 则 (x+1)(x-1) = kn. 设 x+1 = k1*n1, x-1=k2*n2. 则 k1*k2=k , n1*n2=n. 算出每个大于sqrt(n)的约数,然 ...
- [BZOJ1406]密码箱
Problem 给你1个数n,求出0 ≤ x < n,并且x ^ 2 % n = 1 Solution x ^ 2 - 1 = kn,(x - 1) * (x + 1) = kn 所以枚举n的约 ...
- 2018.12.17 bzoj1406 : [AHOI2007]密码箱(简单数论)
传送门 简单数论暴力题. 题目简述:要求求出所有满足x2≡1mod  nx^2\equiv1 \mod nx2≡1modn且0≤x<n0\ ...
- 【bzoj1406】 AHOI2007密码箱 数论
在一次偶然的情况下,小可可得到了一个密码箱,听说里面藏着一份古代流传下来的藏宝图,只要能破解密码就能打开箱子,而箱子背面刻着的古代图标,就是对密码的提示.经过艰苦的破译,小可可发现,这些图标表示一个数 ...
- 【bzoj1406】[AHOI2007]密码箱
x2 ≡ 1 mod n => x2 = k * n + 1 => n | (x + 1) * (x - 1) 令n = a * b,则 (a | x + 1 且 b | x - 1) 或 ...
- [转载]hzwer的bzoj题单
counter: 664BZOJ1601 BZOJ1003 BZOJ1002 BZOJ1192 BZOJ1303 BZOJ1270 BZOJ3039 BZOJ1191 BZOJ1059 BZOJ120 ...
随机推荐
- pb popmenu弹出式选单位置的问题
在主界面上使用m_main.m_title.PopMenu(PointX(),PointY()),可以正确定位弹出式选单的位置: 在主界面的控件智商为使用m_main.m_title.PopMenu( ...
- JQuery的几种页面加载完执行三种方式
jquery加载页面的方法(页面加载完成就执行) 1. $(function(){ $("#a").click(function(){ //adding your code h ...
- OC加强-day06
#program mark - 08 NSMutableDictionary的使用 [掌握] "/08 NSMutableDictionary的使用/1_练习 "练习 1.小明的身 ...
- 初尝 Perl
本文将阐述以下几方面内容: 1.什么是Perl 2.Perl有什么用 3.Windows 下的Perl环境搭建 4.Perl 版Hello World 5.Perl 语法梗概 6.一些参考资料 什么是 ...
- C++ Union妙用(将列表初始化用于数组元素)
Union是个不被注意的关键字,意为联合体,这是个诡异的名字.若不是为了继承C语言,它也不会出现在C++中(虽说,union在C++中得到了扩充,完成了接近类的功能).它的作用主要是节省内存空间,在嵌 ...
- tar 命令基本使用(加密)
本文讲述tar命令的基本使用,special: 使用tar命令对文件加密. 假定在当前目录下有一个文件夹/stuff. 1.将/stuff目录下的所有文件打包成为.tar 文件. $ tar -cvf ...
- Eclipse 和 Intellij idea 快捷键的区别
描述 Eclipse IntelliJ 代码补全 Ctrl+space ctrl+space 打开类或者接口 (两个IDE都支持使用“驼峰字符”前缀的方式来过滤查找列表,进而轻松完成搜索:比如:可以使 ...
- 03_天气查询_socket方式模拟_多线程方式
[简述] 要重视Socket开发,企业后台服务特长使用Socket. 1.服务端要有可持续运行能力,保证线程一致在运行 2.并发处理能力,使用多线程 [工程截图] [WeatherRunner.jav ...
- 系统监控的一些工具w , vmstat
w 命令:--w 查看的是系统整体上的负载 # w 15:23:46 up 3:34, 2 users, load average: 0.03, 0.05, 0.00 USER TTY FROM LO ...
- css中 中文字体(font-family)的标准英文名称
Mac OS的一些: 华文细黑:STHeiti Light [STXihei] 华文黑体:STHeiti 华文楷体:STKaiti 华文宋体:STSong 华文仿宋:STFangsong 儷黑 Pro ...