题目

X*X mod P = A,其中P为质数。给出P和A,求<=P的所有X。

输入

两个数P A,中间用空格隔开。(1 <= A < P <= 1000000, P为质数)

输出

输出符合条件的X,且0 <= X <= P,如果有多个,按照升序排列,中间用空格隔开。
如果没有符合条件的X,输出:No Solution

输入样例

13 3

输出样例

4 9

思路:

由于给定 p 和 a,假设 x 存在,那么 x 的个数为 2 个,即:x1、x2

由于 x1*x1-x2*x2=n*p,那么:x1+x2=p,即 x1、x2 互补

考虑 a 是否完全平方数即可,当 a 不为完全平方数时,那么就可以排除 0~p 取整后的数据

因此需要枚举(p 的开方数取整后+1)~(p/2 取整)

故暴力即可

源程序

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<string>
#include<cstring>
#include<cmath>
#include<ctime>
#include<algorithm>
#include<utility>
#include<stack>
#include<queue>
#include<vector>
#include<set>
#include<map>
#define E 1e-9
#define PI acos(-1.0)
#define INF 0x3f3f3f3f
#define LL long long
const int MOD=7;
const int N=1000000+5;
const int dx[]= {-1,1,0,0};
const int dy[]= {0,0,-1,1};
using namespace std;
LL a[N];
int main(){LL p,a;scanf("%lld%lld",&p,&a);int i=0;bool flag=true;while(true){double x1=sqrt(i*p*1.0+a*1.0);int x2=(int)x1;if(x2>p)break;if(x1==x2){printf("%d ",x2);flag=false;}i++;}if(flag)printf("No Solution");return 0;
}

X^2 Mod P(51Nod-1014)相关推荐

  1. Matlab:mod函数(取余函数)的使用及注意事项

    mod函数(求余函数) mod(x , y):求x除以y后的余数 注意: 一·正负号不同的两个数使用mod函数所得值得正负问题 mod(负 , 正)=正 mod(正 , 负)=负 mod(-x , y ...

  2. 51nod1008 N的阶乘 mod P(水题)

    题目简单来说就是: 输入两个数N和P (N < 10000, P < 10^9),求N! Mod P =? 一道水题两次都WA了,仔细检查后发现是for循环体出点问题,需要 s 先乘 i ...

  3. 莫比乌斯函数之和(51nod 1244)

    莫比乌斯函数,由德国数学家和天文学家莫比乌斯提出.梅滕斯(Mertens)首先使用μ(n)(miu(n))作为莫比乌斯函数的记号.具体定义如下: 如果一个数包含平方因子,那么miu(n) = 0.例如 ...

  4. 中国剩余定理 (51nod 1079)

    一个正整数K,给出K Mod 一些质数的结果,求符合条件的最小的K.例如,K % 2 = 1, K % 3 = 2, K % 5 = 3.符合条件的最小的K = 23. Input 第1行:1个数N表 ...

  5. 多重背包 (poj 1014)

    题目:Dividing 题意:6种重量的的石头,每个给定数量,用总重的一半去装,问能否装满. #include <iostream> #include <algorithm> ...

  6. 【洛谷P3846】【TJOI2007】—可爱的质数(BSGS模板)

    传送门 BSGSBSGSBSGS(又名北上广深算法)用于求解ax≡b(mod p)(p∈prime)a^x \equiv b(mod\ p)(p\in prime)ax≡b(mod p)(p∈prim ...

  7. GTASA圣安地列斯如何打MOD2(简单教程)

    GTASA圣安地列斯打MOD准备流程2 教程博文2 (PS.不是萌新教程,论坛或神奇的地方啥的可以看细节,这里只是讲讲步骤) 步骤 准备一个英文原版客户端(必选) 安装 cleo4(必选) 安装 as ...

  8. 51Nod 1092 回文字符串(LCS + dp)

    51Nod 1092 数据结构暑假作业上出现的一题,学习了一下相关算法之后,找到了oj测试能AC. 1.回文串是一种中心对称的结构,这道题可以转变为求最长回文子序列长度的题目.(子序列:可以不连续) ...

  9. 51nod 1785 数据流中的算法 (方差计算公式)

    1785 数据流中的算法 基准时间限制:1.5 秒 空间限制:131072 KB 分值: 20 难度:3级算法题 51nod近日上线了用户满意度检测工具,使用高级人工智能算法,通过用户访问时间.鼠标轨 ...

  10. 关于逆元的概念、用途和可行性的思考(附51nod 1013 和 51nod 1256)

    [逆元的概念] 逆元和单位元这个概念在群中的解释是: 逆元是指数学领域群G中任意一个元素a,都在G中有唯一的逆元a',具有性质a×a'=a'×a=e,其中e为该群的单位元. 群的概念是: 如果独异点( ...

最新文章

  1. 赛可达推病毒攻击检测和情报分享服务
  2. SQL Server中事务日志自动增长对性能的影响
  3. excel 粘贴到web_最新技术让excel秒变web数据库
  4. Linux内核同步机制之completion
  5. 2021年互联网人才招聘白皮书
  6. 怎么二值化后找字_邓婕美肤团队:秋季皮肤出现问题后怎么办 找对护肤方法是关键_美肤吧...
  7. 斯坦福大学CS224d基础1:线性代数回顾
  8. python调用Java代码并执行--------jpype使用篇
  9. HTC V版M7解锁刷机笔记
  10. 转载:我的外语学习历程(如何学会十门外语)
  11. SpringCloud Netflix-Zuul使用
  12. android 字体设置为中等粗细
  13. 群晖NAS如何修改默认404页面
  14. 2016在电影院看过的电影
  15. 从事热爱的工作和积极乐观
  16. 5G NR 基本概念
  17. 关键词:MAU,DAU,DAU/MAU
  18. 位数不足前面补0mysql语句_SQL语句 不足位数补0
  19. Linux基于bash命令实验报告,Linux操作系统实验报告1
  20. JavaScript总结【11】事件简介

热门文章

  1. 视频转为flv和图片
  2. 漫画:数据中台中台建设的十大误区(建议收藏)
  3. 机器学习的挑战:黑盒模型正面临这3个问题
  4. Keras入门必读教程:手把手从安装到解决实际问题
  5. c# webapi返回html,c#-从Web API 2端点返回自定义HTTP状态代码
  6. java+nginx+tomcat+memcache
  7. Python学习十大良好习惯
  8. 【转】Apache Solr 访问权限控制
  9. 深入浅出C/C++中的正则表达式库(二)——Boost.Regex
  10. 在HermesJMS中创建ActiveMQ Session