我已经在学校里呆了几年了,所以这边所有的食堂我都已经去过。现在我对所有的食物都已经失去了兴趣,因此在用餐时间,我不知道应该去哪个食堂。所以我想出了一个解决方法。
在我们学校有4个食堂,我将它们标记为0到3。然后我说“大兵小将,点谁是谁”,当我说第一个字的时候,我指到标记为0的食堂,当我说到第i(i>1)个词时,我指到标号比前一个指向的食堂大1的食堂,如果前一个指向的食堂的标号为3,我将再一次指到标号为0的食堂。下面这个表格解释了我解决这个案例的过程。
字 我指的食堂编号 大 0 兵 1 小 2 将 3 点 0 谁 1 是 2 谁 3
我将在几天后去上大学,已经听说了在大学里有许多食堂。因此我想再一次使用我的方法,假如有n个食堂,他们分别被标记为0到n-1,并且我将说m个字,当我说第一个字时我指向标记为0的食堂,当我说到第i(i>1)个词时,我指向的食堂的标号比前一个所指向的食堂标号大1。如果所指向的前一个食堂的标记是n-1,我将再一次指向0,我将会去我最后一次指向的食堂吃饭,那么我最后指向的食堂会是哪一个呢?
通过手工操作计算结果将会很耗时,因此我想让你帮我写一个程序,你会帮我吗?
输入描述
多组测试(大约10000),每个测试用例包含两个以一行显示的整数n和m。 [参数说明] 1<=n,m<=100
输出描述
对于每组测试用例,输出我应该去的食堂的标号。
输入样例
4 3 1 100
输出样例
2 0
#include <stdio.h> int main() { int n,m,i,j; while(scanf("%d %d",&n,&m)!=EOF) { for(i=0,j=-1;i<m;i++) { j+=1; j%=n; //printf("%d\n",j); } printf("%d\n",j); } return 1; }