这是我们实验室纳新考试的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 wei
		int 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 wei
		int 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你说难受不难受。。。

或者有没有个大佬给指点一下啊~