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

题目描述
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. C# 算法系列一基本数据结构
  2. kafka概述与下一代消息队列
  3. 从N个数中等概率打印M个数
  4. 古诗文网页版html,古诗文网古诗文经典传承
  5. CNN基础知识(2)
  6. springboot mybatis ehcache_SpringBoot入门建站全系列(十四)集成Redis缓存
  7. PYPL 12月榜单发布,编程语言、IDE与数据库市场如何?
  8. r语言处理数据集编码_在强调编码语言或工具之前,请学习这3个基本数据概念
  9. python如何做接口测试_python实现接口测试
  10. SqlParameter[] 添加参数
  11. PHP正则表达式的运用
  12. 使用rundll32.exe绕过应用程序白名单(多种方法)
  13. 银行笔试题 java笔试题
  14. 【JavaWeb】(血泪踩雷史...)Token登录前后端交互及跨域问题
  15. 图像处理——人脸情绪识别(python卷积神经网络)
  16. 电话号码的字母组合(Java)
  17. wp10手机不能连接微软服务器,WP10手机微软账户登陆不了该怎么办?
  18. 基于TextRank的抽取式文本摘要(英文)
  19. Python Flask Web教程020: flask模板
  20. 能用三角函数表示声音吗——正弦模型综述

热门文章

  1. 为漂亮妈妈征婚的噱头与感动
  2. STM32cubeMX学习--Fatfs文件系统使用详解
  3. 【Java从零到架构师第1季】【并发 Concurrent 03】线程间通信_ReentrantLock_线程池
  4. 用 Python 加密文件,技能满满,赶紧get起来
  5. CSS设置滚动条样式(兼容IE)
  6. 直三棱柱的表面展开图是什么形状的?
  7. 荣耀v10Android9新功能,荣耀V10拿下安卓9.0之后,续航明显提升:体验分享
  8. java 获取mp3 封面_JAVA 读取MP3歌名,歌手,专辑,封面
  9. 细胞凋亡研究丨 Annexin V染色方案
  10. zbrush 使用dynamic mesh zremesh 进行快速拓扑