关于模和互质,很好的题目

/*
n两个质因子 x,y有 ax+by=n-1
ax+by=n-1
ax+1+by=n
y|ax+1
gcd(x,y)=1
ax%y,a取[1,y-1],就会有[1,y-1]个不同的值
其中 必定有y-1 所以y|ax+1
ax+1<=(y-1)x+1=xy-y+1<=n,所以必定存在a,b
*/
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll n;
ll primes[],m;
int main(){
cin>>n;
ll tmp=n;
for(ll i=;i*i<=n;i++)
if(tmp%i==){
primes[++m]=i;
while(tmp%i==)tmp/=i;
}
if(tmp>)primes[++m]=tmp;
if(m<=){
puts("NO");
return ;
}
puts("YES");
puts(""); ll a,b,x=primes[],y=primes[];
for(a=;a<=y-;a++){
if((a*x+)%y==){
b=(n--a*x)/y;
break;
}
}
cout<<a<<" "<<n/x<<'\n';
cout<<b<<" "<<n/y<<'\n';
}

数论剩余系——cf1089F的更多相关文章

  1. cf1056B. Divide Candies(数论 剩余系)

    题意 题目链接 求满足\(i^2 + j^2 \% M = 0\)的数对\((i, j)\)的个数,\(1 \leqslant i, j \leqslant 10^9, M \leqslant 100 ...

  2. 【CSP-J 2021】总结

    前言:程不在长,能过则行.码不在多,无虫则灵.斯是信竞,惟吾爆零.线段维护快,树状跳的勤.数论剩余系,图论前向星.无数竞之推理,无物竞之劳形.大佬楼教主,超奆姚期智,神犇云:您太强了. 早上5:00就 ...

  3. 数论算法 剩余系相关 学习笔记 (基础回顾,(ex)CRT,(ex)lucas,(ex)BSGS,原根与指标入门,高次剩余,Miller_Rabin+Pollard_Rho)

    注:转载本文须标明出处. 原文链接https://www.cnblogs.com/zhouzhendong/p/Number-theory.html 数论算法 剩余系相关 学习笔记 (基础回顾,(ex ...

  4. HDU 4542 小明系列故事——未知剩余系 (数论|反素数)

    分析 kuangbin的blog已经讲的很好了,我做一点补充 1.当做x*y>z的比较时,如果x \(\ast\) y过大,可以写成x>z/y 2.分解质因数时选择用f[][0]保存质数, ...

  5. 快速傅里叶变换FFT& 数论变换NTT

    相关知识 时间域上的函数f(t)经过傅里叶变换(Fourier Transform)变成频率域上的F(w),也就是用一些不同频率正弦曲线的加 权叠加得到时间域上的信号. \[ F(\omega)=\m ...

  6. 【数论】数论进阶-Preknowledge

    数论进阶-Preknowledge 参考资料:洛谷网校2018夏季省选基础班SX-3数论进阶课程及课件 一.整除与取整除法 1.1 定义 1.整除 \(\forall~x,y~\in~Z^+,\) 若 ...

  7. day3(数论)

    总得来说,这是可怕的一天,极其可怕的一天(完) 一.数论 阴影啊! 首先,设ab为两个整数,则存在唯一的q和r,使得a=qb+r 若r=0,则b整除a,记作b|a. (1)同余 若a/m和b/m的余数 ...

  8. Codeforces Round #382 Div. 2【数论】

    C. Tennis Championship(递推,斐波那契) 题意:n个人比赛,淘汰制,要求进行比赛双方的胜场数之差小于等于1.问冠军最多能打多少场比赛.题解:因为n太大,感觉是个构造.写写小数据, ...

  9. NOIP2014 uoj20解方程 数论(同余)

    又是数论题 Q&A Q:你TM做数论上瘾了吗 A:没办法我数论太差了,得多练(shui)啊 题意 题目描述 已知多项式方程: a0+a1x+a2x^2+..+anx^n=0 求这个方程在[1, ...

随机推荐

  1. GetModuleHandleW 分析

    首先查询MSDN,可以清楚地看到 位于kernel32 dll 里面. 有目标就好办,找到这个dll,然后,开工,进入IDA. 跳啊 就到下面那块了. 遗憾的是...显然不是这里阿,实际上下一块调用的 ...

  2. CR0 - CR4 ,5个寄存器,留念,每次都要翻手册,太费事了

  3. 磁盘设备在 Linux 下的表示方法

    在 Linux 系统中磁盘设备文件的命名规则为: 主设备号 + 次设备号 + 磁盘分区号 对于目前常见的磁盘,一般表示为: sd[a-z]x 主设备号代表设备的类型,相同的主设备号表示同类型的设备. ...

  4. what codes does sudo command do in Linux?

    sometime, to make your change of configuration file be effective to web application, we have to rest ...

  5. tf.matmul() 和tf.multiply() 的区别

    1.tf.multiply()两个矩阵中对应元素各自相乘 格式: tf.multiply(x, y, name=None) 参数: x: 一个类型为:half, float32, float64, u ...

  6. 笔记36 Spring Web Flow——配置

    Spring Web Flow是一个Web框架,它适用于元素按规定流程运行的程序.Spring Web Flow是Spring MVC的扩展,它支持开发基于流程的应用程 序.它将流程的定义与实现流程行 ...

  7. Vue-cli开发笔记二----------接口调用、配置全局变量

    我做的一个项目,本身是没用任何框架,纯手写的前端及数据交互,项目已经完结.最近学Vue,于是借用这个项目,改装成vue项目. (一)接口问题:使用axios的调用方法,proxyTable解决开发环境 ...

  8. jQuery实现全选与全部选

    为了便于用户理解,直接粘贴下面的代码即可 <!DOCTYPE html> <html lang="en"> <head> <meta ch ...

  9. thinkphp 入口绑定

    入口绑定是指在应用的入口文件中绑定某个模块,甚至还可以绑定某个控制器和操作,用来简化URL地址的访问. 绑定模块 例如,我们定义了一个入口文件admin.php,希望可以直接访问Admin模块,那么我 ...

  10. Electron是个啥?

    于2013年作为构建Github上可编辑的文本编辑器Atom的框架而被开发出来 是目前开源开发者.初创企业和老牌公司常用的开发工具 是桌面应用框架 相当于一个浏览器的外壳,可以把网页程序嵌入到壳里面, ...