P2818 天使的起誓

天使的起誓

题目描述

Tenshi 非常幸运地被选为掌管智慧之匙的天使。在正式任职之前,她必须和其他新当选的天使一样要宣誓。

宣誓仪式是每位天使各自表述自己的使命,他们的发言稿放在 n n n 个呈圆形排列的宝盒中。这些宝盒按顺时针方向被编上号码 1 , 2 , ⋯   , n − 1 , n 1, 2, \cdots, n - 1, n 1,2,⋯,n−1,n。

一开始天使们站在编号为 n n n 的宝盒旁。她们各自手上都有一个数字,代表她们自己的发言稿所在的盒子是从 1 1 1 号盒子开始按顺时针方向的第几个。例如:有 7 7 7 个盒子,如果 Tenshi 手上的数字为 9 9 9,那么她的发言稿所在的盒子就是 2 2 2 个。现在天使们开始按照自己手上的数字来找发言稿,先找到的就可以先发言。

Tenshi 一下子就找到了,于是她最先上台宣誓:"我将带领大家开启 NOI 之门......" Tenshi 宣誓结束后,陆续有天使上台宣誓。可是有一位天使找了好久都找不到她的发言稿,原来她手上的数字 m m m 非常大,她转了好久都找不到她想找的宝盒。

请帮助这位天使找到她想找的宝盒编号。

输入格式

第一行为正整数 n n n,第二行为正整数 m m m。

输出格式

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

样例 #1

样例输入 #1

复制代码
7
9

样例输出 #1

复制代码
2

样例 #2

样例输入 #2

复制代码
11
108

样例输出 #2

复制代码
9

提示

对于 100 % 100 \% 100% 的数据, 2 ≤ n ≤ 1 0 8 2\le n\le 10^8 2≤n≤108, 2 ≤ m ≤ 1 0 1000 2\le m\le 10^{1000} 2≤m≤101000。

我的代码

cpp 复制代码
#include<bits/stdc++.h>
//#include<manyheader.h>
//#include<dpcq.h>
using namespace std;
int n, ans;
string m;
int main() {
	cin >> n >> m;
	for (int i = 0; i < m.size(); i++)
		ans = (ans * 10 + m[i] - 48) % n;
	if (ans == 0)cout << n;
	else cout << ans;
	return 0;
}
相关推荐
徐小夕19 分钟前
JitWord 3.0 正式发布,高精度Word异构解析+复杂组件兼容,打造web端协同Word编辑器
前端·vue.js·算法
_wyt00113 小时前
洛谷 B3930 [GESP202312 五级] 烹饪问题 题解
c++·gesp
LDR00615 小时前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术15 小时前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
通信小呆呆15 小时前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
码云数智-园园16 小时前
C++20 Modules 模块详解
java·开发语言·spring
benben04416 小时前
强化学习之DQN算法族(基于gymnasium开发)
算法
swordbob16 小时前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
小小工匠17 小时前
Redis - 事务机制:能实现 ACID 属性吗
数据结构·redis·性能优化·并发·持久化