您的位置:首页 > 产品设计 > UI/UE

cf450B. Jzzhu and Sequences

2016-05-05 13:35 302 查看
B. Jzzhu and Sequences

time limit per test
1 second

memory limit per test
256 megabytes

input
standard input

output
standard output

Jzzhu has invented a kind of sequences, they meet the following property:



You are given x and y,
please calculate fn modulo 1000000007 (109 + 7).

Input

The first line contains two integers x and y (|x|, |y| ≤ 109).
The second line contains a single integer n (1 ≤ n ≤ 2·109).

Output

Output a single integer representing fn modulo 1000000007 (109 + 7).

Examples

input
2 3
3


output
1


input
0 -12


output
1000000006


Note

In the first sample, f2 = f1 + f3, 3 = 2 + f3, f3 = 1.

In the second sample, f2 =  - 1;  - 1 modulo (109 + 7) equals (109 + 6).

#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#include<queue>
#include<list>
#include<cmath>
#include<vector>
#define MOD 1000000007ll
using namespace std;
const int maxn=10010;
int main()
{
long long x,y,n;
scanf("%lld%lld%lld",&x,&y,&n);
long long k=n%6;
if(k==1){
printf("%lld\n",(x+4*MOD)%MOD);
}
else if(k==2){
printf("%lld\n",(y+4*MOD)%MOD);
}
else if(k==3){
printf("%lld\n",(y-x+4*MOD)%MOD);
}
else if(k==4){
printf("%lld\n",(-x+4*MOD)%MOD);
}
else if(k==5){
printf("%lld\n",(-y+4*MOD)%MOD);
}
else if(k==0){
printf("%lld\n",(x-y+4*MOD)%MOD);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cf450B. Jzzhu and Se