洛谷 P2818 天使的起誓
生活随笔
收集整理的這篇文章主要介紹了
洛谷 P2818 天使的起誓
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
P2818 天使的起誓
題目描述
Tenshi非常幸運地被選為掌管智慧之匙的天使。在正式任職之前,她必須和其他新當選的天使一樣要宣誓。宣誓儀式是每位天使各自表述自己的使命,他們的發言稿放在n個呈圓形排列的寶盒中。這些寶盒按順時針方向被編上號碼1,2,…,n-1,n。一開始天使們站在編號為n的寶盒旁。她們各自手上都有一個數字,代表她們自己的發言稿所在的盒子是從1號盒子開始按順時針方向的第幾個。例如:有7個盒子,如果Tenshi手上的數字為9,那么她的發言稿所在的盒子就是2個。現在天使們開始按照自己手上的數字來找發言稿,先找到的就可以先發言。 Tenshi一下子就找打了,于是她最先上臺宣誓:“我將帶領大家開啟Noi之門……” Tenshi宣誓結束后,陸續有天使上臺宣誓。可是有一位天使找了好久都找不到她的發言稿,原來她手上的數字m非常大,她轉了好久都找不到她想找的寶盒。
請幫助這位天使找到她想找的寶盒編號。
輸入輸出格式
輸入格式:?
第一行為正整數n,第二行為正整數m,其中n,m滿足2<=n<=10^8,2<=m<=10^1000
?
輸出格式:?
只有一行(包括換行符),即天使想找的寶盒的編號。
?
輸入輸出樣例
輸入樣例#1:?復制 7 9 輸出樣例#1:?復制 2 輸入樣例#2:?復制 11 108 輸出樣例#2:?復制 9思路:數論,高精。可以對讀入優化加一些小小的操作,就可以省去高精了。
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; long long n; long long work(long long mod){char l=getchar();long long u=0;while(!(l>='0'&&l<='9')) l=getchar();while(l>='0'&&l<='9') u=(u*10+l-'0')%mod,l=getchar();return u?u:n; } int main(){scanf("%lld",&n);cout<<work(n); }
?
轉載于:https://www.cnblogs.com/cangT-Tlan/p/8094488.html
總結
以上是生活随笔為你收集整理的洛谷 P2818 天使的起誓的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 表单+css样式+
- 下一篇: flume1.8 开发指南学习感悟