题目

\(c\)等于一个分数,求他的余数,分数是不能直接模的,除以一个数等于乘上这个数的逆元。

所以此题就是求一个逆元,费马小定理求逆元是很方便的,一个快速幂就解决了。

还要注意因为\(a,b\)的值都很大,在读入的时候需要取模

但是这样只能拿到\(90\)分,最后一个点过不了,什么原因?我们还没有判断这个\(b\)是否有逆元,判断这个数是否有逆元的方法,也不难,只需判断\(gcd(b, mod)\)是否为\(1\)即可。

话说我自己写过博客的我都忘了,做题的时候回来看的\(233\)

貌似博客里写的东西还出锅了,又被\(lfd\)一顿嘲笑。\(233\)(卑微.jpg

他讲的数论我当时确实是听得很明白啊,可是后来又忘了......

#include <cstdio>
#include <iostream>
using namespace std;
const int N = 19260817;
long long a, b, ans;
long long read() {
long long s = 0, w = 1;
char ch = getchar();
while(!isdigit(ch)) {if(ch == '-') w = -1; ch = getchar();}
while(isdigit(ch)) s = s * 10 + ch - '0', s %= N, ch = getchar();
return s * w;
}
long long power(long long x, long long y) {
long long sum = 1;
while(y) {
if(y & 1) sum = (sum * x) % N;
x = (x * x) % N;
y >>= 1;
}
return sum;
}
long long gcd(long long x, long long y) {
return y == 0 ? x : gcd(y, x % y);
}
int main() {
a = read(), b = read();
if(gcd(b, N) != 1) printf("Angry!\n");
else cout << (a * power(b, N - 2)) % N << endl;
return 0;
}

谢谢收看,祝身体健康!

最新文章

  1. 创建maven项目(cmd 命令)
  2. 小谈一下JavaScript中的JSON
  3. [Java] 特殊正则-替换字符串
  4. Javascript高级程序设计——javascript简介
  5. GO语言练习:channel select 超时机制
  6. zk源码环境搭建
  7. [Android] emualtor-5554 offline的解决方法
  8. hihocoder 1196 高斯消元.二
  9. [BS-06] 设置release发布时NSLog不打印设置
  10. 【JQGRID DOCUMENTATION】.学习笔记.6.Editing:Common Rules
  11. tomcat配置及使用 环境变量设置
  12. PAT-乙级-1029. 旧键盘(20)
  13. ListBox获取行字符串
  14. git常见指令
  15. Reverse Linked List II 解答
  16. JSP指令 include 和forward
  17. VMWARE使用问题
  18. 基于visual Studio2013解决C语言竞赛题之1088模拟计算器
  19. 调用QQ聊天功能
  20. java swing button和键盘监听冲突问题

热门文章

  1. LeetCode 328:奇偶链表 Odd Even Linked List
  2. flink solt,并行度
  3. HashMap的底层原理(jdk1.7.0_79)
  4. Oracle 增删改(INSERT、DELETE、UPDATE)语句
  5. Serverless 的喧哗与骚动(一)附Serverless行业发展回顾
  6. springboot2使用外部的tomcat服务器创建项目步骤
  7. 【java提高】---patchca生成验证码
  8. C# based on PdfSharp to split pdf files and get MemoryStream C#基于PdfSharp拆分pdf,并生成MemoryStream
  9. ASP.NET Core 3.0 使用AspectCore-Framework实现AOP
  10. Docker install in Linux