Vasya lives in a round building, whose entrances are numbered sequentially by integers from 1 to n. Entrance n and entrance 1 are adjacent.
Today Vasya got bored and decided to take a walk in the yard. Vasya lives in entrance a and he decided that during his walk he will move around the house b entrances in the direction of increasing numbers (in this order entrance n should be followed by entrance 1). The negative value of b corresponds to moving |b| entrances in the order of decreasing numbers (in this order entrance 1 is followed by entrance n). If b = 0, then Vasya prefers to walk beside his entrance.
Illustration for n = 6, a = 2, b = - 5.
Help Vasya to determine the number of the entrance, near which he will be at the end of his walk.
The single line of the input contains three space-separated integers n, a and b (1 ≤ n ≤ 100, 1 ≤ a ≤ n, - 100 ≤ b ≤ 100) — the number of entrances at Vasya's place, the number of his entrance and the length of his walk, respectively.
Print a single integer k (1 ≤ k ≤ n) — the number of the entrance where Vasya will be at the end of his walk.
6 2 -5
3
5 1 3
4
3 2 7
3
The first example is illustrated by the picture in the statements.
题意:走路,可正可反,问最后的位置。
#include<stdio.h>
int main()
{
int n,a,b;
scanf("%d%d%d",&n,&a,&b);
if(n==1)
{
printf("%d\n",a);
return 0;
}
if(b>=0)
{
a+=b%n;
if(a>n)
a=a%n;
printf("%d\n",a);
}
else
{
a=a+b;
while(a<=0)
a+=n;
printf("%d\n",a);
}
return 0;
}
本文介绍了一个简单的算法问题,主人公瓦夏居住在一个圆形建筑中,从任意入口出发,按指定方向行走特定数量的入口后,确定最终停留的位置。文章通过一个C语言程序解决了这一问题。
1569

被折叠的 条评论
为什么被折叠?



