首页 > 其他 > 详细

7.14_B题

时间:2014-07-15 10:13:21      阅读:357      评论:0      收藏:0      [点我收藏+]
时间限制 1000 ms 内存限制 65536 KB

题目描述

趁着放假,学姐去学车好带学弟去兜风。但是学车真的很辛苦,每天五点半就要起床赶班车,但是学姐的教练更辛苦,他们要相同的时间到而且日日如此。于是温柔的学姐关切的问了他们的休息情况,教练告诉她,他们两个人倒班教学姐,每个教练每上n天班就会放一天假,如果一个教练放假,就由另一个教练来代课,一直代课到自己放假再换人。 现在学姐想知道,每一天是哪个教练给她上课。

输入格式

输入开始为数据组数T(T10),接下来T组输入,第一行为nm,我们假设第一天教学姐的是教练1,而且他教学姐的前一天刚刚放完假,教练2则会在学姐上课的第m天放假,1mn 以保证每天都有教练教学姐。接下一行为q(q103),即询问次数,接着q行,每行ti表示学姐想问哪天的教练是谁。因为教练们非常非常厉害,而且学姐不知道自己到底会花多久学完车,你的程序要处理的nmti上限为109

输出格式

对于每个询问ti,输出一行,1或2代表当天的教练。

输入样例

1
5 3
3
6
9
13

输出样例

2
1
2

很简单的找规律题目,只需要自己在纸上画画值班表就大体能找到周期,不过第一个周期是特例,和之后的不一样。

代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
 
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int n,m;
        scanf("%d%d",&n,&m);
        int c;
        scanf("%d",&c);
        for(int i=0;i<c;i++)
        {
            int q;
            scanf("%d",&q);
            int temp=q%(2*(n+1));
            if(temp==0)
                printf("2\n");
            else if(temp<m+n+1&&temp>=n+1)
                printf("2\n");
            else if(temp<m&&q>(2*(n+1)))
                printf("2\n");
            else
                printf("1\n");
        }
    }
    return 0;
}


7.14_B题,布布扣,bubuko.com

7.14_B题

原文:http://blog.csdn.net/u013912596/article/details/37783739

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!