UVA12464 Professor Lazy, Ph.D. 水题

来源:互联网 发布:手机淘宝1元抢购在哪里 编辑:程序博客网 时间:2024/04/28 21:10

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3907

解题思路:笔算后会发现5个一循环,处理下浮点数就好。

代码:

#include <math.h>#include <stdio.h>#include <string.h>#include <algorithm>#define MAXN 0#define INF 0x7fffffff#define eps 1e-10#define MAX(x,y) ((x)>(y)? (x):(y))#define MIN(x,y) ((x)<(y)? (x):(y))#define MEM(a) (memset((a),0,sizeof(a)))#define FRE freopen("input.txt","r",stdin)using namespace std;double a[5];int main(){    int x,y;    long long int n;    while(scanf("%d%d%lld",&x,&y,&n))    {        int z=n%5;        if(!x && !y && !z) break;        a[0]=x; a[1]=y;        for(int i=2;i<5;i++)            a[i]=(1+a[i-1])/a[i-2];        int ans=(int)(a[n%5]+eps);        printf("%d\n",ans);    }    return 0;}