高精四则运算及求模运算之高精度求模

题目描述
Tenshi非常幸运地被选为掌管智慧之匙的天使。在正式任职之前,她必须和其他新当选的天使一样要宣誓。
宣誓仪式是每位天使各自表述自己的使命,他们的发言稿放在n个呈圆形排列的宝盒中。这些宝盒按顺时针方向被编上号码1,2,…,n-1,n。
一开始天使们站在编号为n的宝盒旁。她们各自手上都有一个数字,代表她们自己的发言稿所在的盒子是从1号盒子开始按顺时针方向的第几个。例如:有7个盒子,如果Tenshi手上的数字为9,那么她的发言稿所在的盒子就是2个。现在天使们开始按照自己手上的数字来找发言稿,先找到的就可以先发言。
Tenshi一下子就找到了,于是她最先上台宣誓:“我将带领大家开启Noi之门……” Tenshi宣誓结束后,陆续有天使上台宣誓。可是有一位天使找了好久都找不到她的发言稿,原来她手上的数字m非常大,她转了好久都找不到她想找的宝盒。
请帮助这位天使找到她想找的宝盒编号。

输入格式
第一行为正整数n,第二行为正整数m,其中n,m满足2<=n<=108,2<=m<=101000

输出格式
只有一行(包括换行符),即天使想找的宝盒的编号。

输入输出样例
输入 #1

7
9

输出 #1

2

输入 #2

11
108

输出 #2

9

思路:先定义一个字符数组来存储高精数,定义一个整型数组来存储高精数;然后将高精数赋值到数组中,接着定义一个长整型变量ans代表余数,然后用同余定理的公式和for循环遍历整型数组来计算余数,再根据余数大小分两种情况输出即可

#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e4+4;
char s[MAXN];
int a[MAXN];
int main(){int n;cin>>n>>s;int len = strlen(s);for(int i = 0;i < len;i++){a[i] = s[i] - '0';}long long ans = 0;for(int i = 0;i < len;i++){ans = (ans * 10 + a[i]) % n;//同余定理}if(ans==0)cout<<n<<endl;elsecout<<ans<<endl;return 0;
}

高精四则运算及求模运算(五)相关推荐

  1. 复数求模运算的快速近似实现方法

    数字信号处理中,经常需要对复数进行求模运算.找了一些资料,发现对精度要求不高的情况下是有比较好的简化运算方法的.我这里整理出了如下简化步骤: 1. 对复数的实部和虚部取绝对值 2. 把绝对值大的定为M ...

  2. 散列函数中求模运算为什么要使用素数,原因分析

    一.散列函数 散列函数即是将元素映射到对应槽位置的方法. 一个好的散列函数应该是尽可能的将元素均匀的散列到 m 个槽位中的一个. 二.除法散列法 散列函数的实现有很多种,其中一种常见的散列函数即 除法 ...

  3. 常见的几种求模运算(mod)——加减乘、除的小费马定理、指数的欧拉降幂

    在C/C++中,+,-的优先级低于/,*,%,而/,*,%优先级一样,所以就从左到右 1.乘法 我们在做题的时候,遇到(a*b)%c,由于可能a*b先计算的话,会超精度,所以我们可以这么转化 (a*b ...

  4. C语言口求整除x与y的余数,取余或取模运算小结

    8种机械键盘轴体对比 本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选? %求余数整除 a / b = C ( C是整除得到的值) 例如: 3 / 4 = 0--–3 ,其中C为0, 3为余数 ...

  5. 关于取模运算(mod)和求余(rem)运算

    通常情况下取模运算(mod)和求余(rem)运算被混为一谈,因为在大多数的编程语言里,都用'%'符号表示取模或者求余运算.在这里要提醒大家要十分注意当前环境下'%'运算符的具体意义,因为在有负数存在的 ...

  6. python模运算求余_取模运算和取余运算

    取模运算和取余运算 取模运算( " Modulo Operation " )和取余运算 ( " Complementation " )两个概念有重叠的部分但又不 ...

  7. java中的取模和取余_取模运算

    本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧! 取模运算是求两个数相除的余数.[1] 取模运算("Modulus Operation")和取余运算(&qu ...

  8. c语言中的取模运算符_C语言除法算法和取模运算的实现(多种算法,多种思路)...

    对计算机来说,除法与求模是整数算术运算中最复杂的运算.相对其他运算(如加法与减法)来说,这两种算法的执行速度非常慢.例如,ARM 硬件上不支持除法指令,编译器调用 C 库函数来实现除法运算.直接利用 ...

  9. BZOJ1876 [SDOI2009]SuperGCD 【高精 + GCD优化】

    题目 Sheng bill有着惊人的心算能力,甚至能用大脑计算出两个巨大的数的GCD(最大公约 数)!因此他经常和别人比 赛计算GCD.有一天Sheng bill很嚣张地找到了你,并要求和你比 赛,但 ...

最新文章

  1. HDLBits 系列(24)进入FSM(有限状态机)的世界入口
  2. java 数据库数据脱敏_Sharding-JDBC-数据脱敏
  3. 1.4 满足和优化指标-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
  4. getResources()方法
  5. setjmp 与 longjmp
  6. 第十至十二章 算法分析--高阶数据结构
  7. SSI指令使用详解(转)
  8. python基本词汇的特点_Python 爬完评论只会做词云?情感分析了解一下
  9. 小程序学习笔记(6)-菜谱小程序的制作
  10. [裴礼文数学分析中的典型问题与方法习题参考解答]5.1.8
  11. 无人驾驶虚拟仿真(十五)--障碍物检测与识别1
  12. python字符串行列转换_Excel、SQL、Python分别实现行列转换
  13. Hadoop——你不得不了解的大数据工具
  14. java http 服务器搭建_基于http.server搭建局域网服务器过程解析
  15. 网页设计作业 / 动漫网页设计作业,网页设计作业 / 动漫网页设计成品,网页设计作业 / 动漫网页设计成品模板下载
  16. 关于在控制面板上软件卸载失败的问题
  17. 常见却可能无意间伤人的 8 句话
  18. 开发者工具的暖心提示语
  19. python 很高兴问题_Python 3.7曾有一个很老的GIL竞态条件(race condition),我是这么解决的...
  20. 『强烈推荐2个网站』这才是Win10官方原版正确下载姿势

热门文章

  1. 数据库课程设计心得【6】----总结篇
  2. 面向对象程序设计的特点
  3. element UI tab拖曳
  4. 【转】迈拓维矩45/65W PD快充头评测 ,视频实操对比
  5. 一周上线百万高并发系统!你给我解释解释什么叫牛逼?
  6. 利用xfce4给ubuntu终端添加背景图片
  7. 37.Django中设置获取和删除cookie
  8. objects365数据集类别对应表
  9. Qt|解析NTP报文时间戳,并计算时差和延迟,利用时差同步时间
  10. SM2加密解密执行报 Invalid point encoding 0x5c