Codeforces Round #346 (Div. 2) A题 [一道让我生气的思维题·]

A. Round House

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.

Input
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.

Output
Print a single integer k (1 ≤ k ≤ n) — the number of the entrance where Vasya will be at the end of his walk.

Input

6 2 -5

Output

3

AC代码:

 1 #include<bits/stdc++.h>
 2 
 3 using namespace std;
 4 
 5 int main(){
 6     int n,a,b;
 7     cin>>n>>a>>b;
 8     if(n==1){
 9         cout<<1;return 0;
10     }
11     if(b>=0){
12         if((a+b)%n==0){
13             cout<<n;return 0;
14         }
15         cout<<(a+b)%n;
16         return 0;
17     }
18     int ans=(a+n-abs(b)%n)%n;
19     if(ans==0){
20         cout<<n;
21     }else
22         cout<<ans;
23     return 0;
24 }
25 /*
26 100 1 -1
27 */
原文地址:https://www.cnblogs.com/pengge666/p/11514485.html