2019-08-07(甲级3题)

1005 Spell It Right (20 分)

这道题大致意思是:将输入的整数字符串按位求和,再将得到的和按位输出,0输出zero,1输出one,以此类推。
要注意的坑: 当只输出一个0的时候,直接输出zero。

1006 Sign In and Sign Out (25 分)

这道题大致意思是:判断门是谁开的(来最早的),谁关的(走最晚的)。主要是时间的处理问题。
要注意的: 时间的输入不需要逐个逐个判断,用scanf就能很好地解决时间输入的问题,再统一转换成秒,就能很方便地比较大小了。
代码如下:

#include 
#include 
#include 
using namespace std;

int main(){
    string early,last;
    int n,unlock=24*3600,lock=0;
    cin>>n;
    for(int i=0;i>id;
        scanf("%d:%d:%d",&h,&m,&s);
        start=h*3600+m*60+s;
        //cout<lock){
            lock=finish;
            last=id;
        }
    }
    cout<

1008 Elevator (20 分)

这道题大致意思是:电梯移动,移动到不同楼层时的上升下降停止的时间不一样。
最大的坑是: 首先第一个数字是指接下来会出现多少个数字,直接读int整数就行了。其次是,停止时间是每读取一个数都停止等待,一定要都加上。
代码如下:

#include 
using namespace std;

int main(){
    int n,current=0,sum=0;
    cin>>n;
    for(int i=0;i>to;
        int sub=to-current;
        if(sub>0){
            sum+=6*sub;
        }
        else sum-=4*sub;
        sum+=5;
        current=to;
    }
    cout<

你可能感兴趣的:(2019-08-07(甲级3题))