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;
}
相关推荐
AA陈超5 分钟前
虚幻引擎5 GAS开发俯视角RPG游戏 P07-08 点击移动
c++·游戏·ue5·游戏引擎·虚幻
星释12 分钟前
Rust 练习册 :Proverb与字符串处理
开发语言·后端·rust
lkbhua莱克瓦2428 分钟前
Java基础——常用算法3
java·数据结构·笔记·算法·github·排序算法·学习方法
小白程序员成长日记29 分钟前
2025.11.07 力扣每日一题
数据结构·算法·leetcode
·白小白31 分钟前
力扣(LeetCode) ——209. 长度最小的子数组(C++)
c++·算法·leetcode
工会主席-阿冰31 分钟前
数据索引是无序时,直接用这个数据去画图的话,显示的图是错误的
开发语言·python·数据挖掘
小猪咪piggy33 分钟前
【算法】day16 动态规划
算法·动态规划
ohnoooo934 分钟前
251106 算法
数据结构·c++·算法
麦麦鸡腿堡35 分钟前
Java_TreeSet与TreeMap源码解读
java·开发语言
uesowys1 小时前
华为OD算法开发指导-简易内存池
java·算法·华为od