这是我们实验室纳新考试的A题,简单模拟。
话不多说上题干:
哲哲晔晔很难受
Description
哲哲和晔晔最喜欢一起睡懒觉了!可老师又特别喜欢点名,所以每个第一节有课的早晨,他们都会很难受。
因为起床太晚了他们每次都要跑着去教室,迟到了可是要扣分的,他们想知道自己一共扣了多少次分,你能帮帮他们吗。
Input
输入数据共2行
第一行有7个数据代表一周七天老师点名的时间(第一节课开始上课的时间是8:00,结束的时间是9:50,老师只会在这个时间段内点名),大写的X表示这天老师不会点名或者这天第一节没课。
第二行有7个数据代表一周七天哲哲和晔晔一起到达教室的时间,(可能是这一天0:00到23:59的任何时间),大写的X表示这天他们起床失败-_-||。
Output
输出一个整数表示这周他们一共扣了几次分。
Sample Input 1
8:00 8:10 8:20 8:30 8:40 8:50 X 9:00 8:50 7:04 8:30 10:00 X 14:00
Sample Output 1
4
我的代码:
#include<iostream>
#include<string.h>
#include<string>
using namespace std;
char ashi[20][7];
char bshi[20][7];
int booka[20];
int bookb[20];
char afen[20][7];
char bfen[20][7];
char c[100];
char d[100];
int main()
{cin.getline(c,100);cin.getline(d,100);
// gets(c);
// gets(d);
// puts(c);int lun=1;int lenc=strlen(c);int lend=strlen(d);for(int i=0;i<lenc;i++){if(c[i]==' '){lun++;continue;}if(c[i]=='X'){booka[lun]=1;continue;}//int j=i;//yong j lai daibiao di i weiint k=0;while(c[i]!=':'){ashi[lun][k]=c[i];i++;k++;}ashi[lun][k]='\0';k=0;i++;while(c[i]!=' '){afen[lun][k]=c[i];i++;k++;}i--;afen[lun][k]='\0';}lun=1;for(int i=0;i<lend;i++){if(d[i]==' '){lun++;continue;}if(d[i]=='X'){bookb[lun]=1;continue;}//int j=i;//yong j lai daibiao di i weiint k=0;while(d[i]!=':'){bshi[lun][k]=d[i];i++;k++;}bshi[lun][k]='\0';k=0;i++;while(d[i]!=' '){bfen[lun][k]=d[i];i++;k++;}i--;bfen[lun][k]='\0';}for(int i=1;i<8;i++){
// printf("%s %s %d\n",ashi[i],afen[i],booka[i]);}for(int i=1;i<8;i++){
// printf("%s %s %d\n",bshi[i],bfen[i],bookb[i]);}int cnt=0;for(int i=1;i<8;i++){if(booka[i]==1){continue;}if(bookb[i]==1) {
// printf("di %d ci\n",i);cnt++;continue;}if(strlen(bshi[i])==2){
// printf("di %d ci\n",i);cnt++;continue;}if(strcmp(ashi[i],bshi[i])<0){
// printf("di %d ci\n",i);cnt++;continue;}else if(strcmp(ashi[i],bshi[i])>0){continue;}if(strcmp(afen[i],bfen[i])<0){
// printf("di %d ci\n",i);cnt++;continue;}}printf("%d\n",cnt);return 0;}
总是RE你说难受不难受。。。
或者有没有个大佬给指点一下啊~