暑假热身 E. 无聊的LSY

LSY大牛没事就爱玩游戏,包括很多很无聊的游戏。某日,LSY大牛又找到了一个无聊的游戏:每一局游戏的开始,LSY大牛将代表自己的棋子放在一个线性棋盘的最左端(第0个格子,可以认为向右端无限延伸),接着,他会从浩大的牌堆里随机摸三张牌A,B和N,在本局中,LSY大牛可以将代表自己的棋子向左或者向右移动A或者B个格子,当LSY的棋子停在了第N个格子上的时候,LSY大牛将获得本局比赛的胜利。当然,这游戏实在是有点太无聊了……于是LSY大牛希望大家写一个小程序来帮助他判断当前比赛是否能够获胜。

Input

测试数据有多组。每一行为一组测试数据,分别为A,B,N三个数的值(0<A,B,N<100000)。

当输入0 0 0的时候退出,此行数据不处理。

Output

对于每一组测试数据,若LSY大牛可以赢的本局比赛的胜利,则输出YES,否则输出NO。

Sample Input

3 5 7
2 4 5
0 0 0

Sample Output

YES
NO

#include<stdio.h>
int main()
{
    int A,B,T,S,N,M=0,Q=0,v=1,i;
    while(1)
    {
        scanf("%d %d %d",&A,&B,&N);
        if(A==0&&N==0&&B==0){break;}
        if(A==B&&N==0||A==B&&N%A==0){printf("YES\n");goto as;}
        if(A%2==0&&B%2==0&&N%2!=0){printf("NO\n");goto as;}
        if(A==1||B==1){printf("YES\n");goto as;}
        if(A>B){T=B;}
        if(A<B){T=A;}
        for(i=T-1;i>=2;i++)
        {
            if(A%i==0&&B%i==0)
            {
                v=0;break; //不互质
            }
        }

        if(v==1){printf("YES\n");goto as;}
        if(v==0)
        {
            while(1){
            if(A>B){S=A;T=B;}
            if(A<B){S=B;T=A;}
            M=S-T;
            A=M;
            B=T;
            if(M==1||M==N){printf("YES\n");goto as;}
            if(M==T&&N==0){printf("YES\n");goto as;}
            if(M==T&&N!=0){S=0;break;}
            }
            if(S==0&&N%M==0){printf("YES\n");goto as;}
        }
        printf("NO\n");
        as: A=B=T=S=N=M=Q=0;v=1;
    }
    return 0;
}

写了好多if判断有点复杂了,附上大神代码写的果然简练。

#include<stdio.h>
int main()
{
    int a, b, n;
    int i, j;    //
    while(1)
    {
        scanf("%d%d%d", &a, &b, &n);
        if( a == 0 && b == 0 && n == 0 )
            break;
        else
        {
            for( i = 1; i <= a; i++ )
            {
                if( a % i == 0 && b % i ==0 )
                    j = i;
            }
            if( n % j == 0 )
                printf("YES\n");
            else
                printf("NO\n");
        }
    }
    return 0;
}

时间: 2024-07-31 14:40:05

暑假热身 E. 无聊的LSY的相关文章

暑假热身 D. 条形码设计

校ACM队准备筹划向学校批请一个专用机房.但是为了防止它变成公用机房,FL建议采用刷卡进入的办法,她设计了一种条形码,每人都对应一个.这种大小为2*n的条形码由以下三种元素构成:1*2.2*1.2*2的长方形方格.但是我们同样也知道,很多人都容易在刷卡时把卡的位置搞反.为了避免机器错误的处理,我们认为下图的两种条形码是一样的(图中颜色只是为方便说明,不用考虑). FL现在很想知道一个问题,就是用她的这种条形码编码方式,对于一个给定的长度n最多能有多少不同的条形码可供使用? Input 多组测试数

暑假热身 B. 下载测速

最近,nono终于结束了每年一次的为期12个月的冬眠,醒来的第一件事就是——看电影!!nono发现最近一年出现了各种很好很强大的电影,例如这个.这个.还有这个. 于是nono直接把这些电影全部扔进了下载列表之中.已知nono下载了N部电影,其中第i部电影的大小为Si,该电影最大下载速度不会超过Vi,在任一时刻全部电影的下载速度之和不会超过Vt.现在nono希望知道在这些条件下至少需要多长时间才能将这些电影全部下完. Input 多组输入.每组输入的第一行为两个整数N,Vt(0<N≤106, 0<

暑假热身 A. GCC

GCC编译器是一个由GNU项目维护的编译系统,它支持多种编程语言的编译.但是它并不包含数学运算符“!”.在数学中,这个符号代表阶乘.表达式n!的意思是从1到n的所有整数的乘积. 例如,4!=4*3*2*1=24. (0!定义为1) 现在请你写程序计算一下 (0! + 1! + 2! + 3! + 4! + ... + n!)%m. Input 第一行是一个整数T,代表了测试数据的组数. 每组测试数据单独一行,包括一个整数n和m,用一个空格隔开. 0 < T <= 20 0 <= n &l

夏天那么短,思念却很长

有时候回头去看过往的一段记忆,就像某天清晨睡眼朦胧地瞥见镜子中的自己,邋遢,可笑,油光满面,素面朝天,带着些许尴尬,却又必须安然地接受. 文/周宏翔 因为南方下大雨,香港飞上海的飞机一直处于delay的状态,我和侨发了一条短信,问她减肥情况如何,侨没有理我,我想她一定臭着脸看着墙上贴着那句“胖子是没有前途的”的豪言壮语跺脚.摇摇晃晃到飞机落地,睡醒开机,看见侨回的短信,“天津今天下大雨,上班的时候滑倒了,幸运的是没有摔伤.” 我很不客气地回了一句,“是因为肉太多了吗?” 然后侨便再也没有回过来.

2014暑假ACM训练总结

2014暑假ACM训练总结报告 匆匆之中,一个暑假又过去了,在学校训练的这段日子真的是感觉日子过得好快啊! 时光如箭,日月如梭! 匆忙的学习之中一个暑假就这样结束了,现在就来写一些总结吧,供自己以后阅读和回忆吧! 2014年7月14我们即可1303考完了最后一科模拟电路,也宣告了暑假的到来!本来有刚好两 星期的时间可以回家或是去做其他的事,然后我在学校呆了几天,无聊之余便回家了.在家呆了大概 7天,便正式回校了,准备学校的ACM的训练去了. 先亮一下暑假的训练计划吧! 集训详情: 第一周回顾知识

暑假第一周总结

自9号放假到现在,暑假第一周即将结束.在此总结一下本周进度 回家前几天还是比较激动的,在家里呆得舒服,报名了驾照考试,报名.体检.背题,忙的不行,有时间还要和朋友闲聊,但在家的时光还是很无聊的,我拿出一些时间,读了老师给的电子版<大道至简>前两个章节,整本书几乎是短小精悍,确实符合大道至简的意味.篇幅很精简,我只花了不长时间就读完了前两节,对比愚公的团体勤奋.不屑努力,李冰这一历史上的"懒人"明显可以看出其更有智慧.放到现在的程序员的角度来看,愚公是现在我们这些初学者的写照

暑假反思

成功的,又一门功课成功地成为了全班倒数,还是最能体现一个人编程水平的c++实训.又得好好反思一下自己的学习状态了. 刚来到华工时的那种不甘,让我近乎维持着高中的学习状态,课内成绩荣登榜首,ACM一直保持着努力状态,这时的我的代码能力可以说是超过了除了几个原本有底子的大多数人.自大一上打下良好的基础之后,一直维持“学霸”状态的我开始反思:我想成为什么样的人?我所热爱的到底是什么?并且开始打算大一下甚至花一年的时间来明确这个方向. 直到现在我都觉得那个时候的决策是正确的. 但是,从现在来看,我的寻找

一些项目——今年暑假不AC

Problem Description "今年暑假不AC?" "是的." "那你干什么呢?" "看世界杯呀,笨蛋!" "@#$%^&*%..." 确实如此,世界杯来了,球迷的节日也来了,估计很多ACMer也会抛开电脑,奔向电视了. 作为球迷,一定想看尽量多的完整的比赛,当然,作为新时代的好青年,你一定还会看一些其它的节目,比如新闻联播(永远不要忘记关心国家大事).非常6+7.超级女生,以及王小丫的&

写在开学后:暑假没有什么卵用的总结以及NOIP复赛前的计划

emmmm暑假干了点什么呢? 7月在机房培训,听的基本是各种没有学过的东西...所以基本都是懂了个大概,没有具体的代码实现...23号之后休息,除了出去玩之外也没有干啥... 8月去雅礼集训.emmm讲的基本都是以前听过的东西和已经学过的东西...所以现在还是懂了个大概...至于收获嘛,就是有了十几天的考试经验(虽然总结被我忘到脑袋后面了) 现在开学了,在新知识的学习上可以说我这两个月基本什么都没有学? 所以说更是要赶进度了= = 11月就是NOIP了,大概是没有什么压力的?不过今年的NOIP,