/*小明是一名学生,又到了学校的选课时间,他想选一些课程学习,已知课程开课时间都在每周一到周五之内,早上4讲课,
下午4讲课,晚上2讲课。
小明担心选课时间上有所冲突。所以他希望可以对课程时间进行检查。
输入
首先输入一个整数n(0<n<=100),表示小明选课总数。
之后输入n行选课信息,每行选课信息有2个数字。
第一个数字表示开课时间,开课时间用2位数表示,前一位用0到4表示周一至周五,后一位用0到9表示从早到晚顺序第几讲课,
如12表示礼拜二第三讲课。01表示礼拜一第二讲课。
每行第二个数字表示课程代码,如:204521。课程代码为6位数字。输入课程代码均不重复。 */
#include <iostream>
#include <stdio.h>
#include <vector>
using namespace std;
int main()
{
int arr[][2] = {01,204521,23,204523,22,204526,01,204528,22,204527,01,344322,22,888888};
int rowNum = ( sizeof(arr) / sizeof(int) )/ ( sizeof(arr[0]) / sizeof(int) ); //求数组的行数
vector<int> vec; //防止重复统计
int num = vec.size();
int flag1 = 0; //换行标识符
for (int i=0;i<rowNum;i++)
{
int flag = 0; //标识符
for (int j=0;j<num;j++)
{
if(*arr[i]==vec[j])
{
i++;
continue;
}
}
for (int j=i+1;j<rowNum;j++)
{
if (*arr[i] == *arr[j])
{
if (flag == 0)
{
if (arr[i][0] == 1)
cout<<"0"<<arr[i][0]<<" "<<arr[i][1];
else
cout<<arr[i][0]<<" "<<arr[i][1];
flag = 1;
flag1++;
}
cout<<" "<<arr[j][1];
vec.push_back(*arr[j]);
num++;
}
}
if (flag1 == 1)
{
cout<<endl;
flag1 = 0;
}
}
return 0;
}
欢迎大家指正。
科大讯飞2017笔试题
最新推荐文章于 2024-08-04 20:12:53 发布