Spring-outing Decision

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 676    Accepted Submission(s): 220

Problem Description
Now
is spring ! The sunshine is warm , the flowers is coming out . How
lovely it is! So my classmates and I want to go out for a spring-outing.

But
we all select courses ourselves. We don't have classes at the same
time.Now our monitor has a big trouble in arranging the time of the
spring-outing.

Can you help him?

I will give you our courses information and the time of the spring-outing.You just need to tell me that who can't go with us.

 
Input
The first line contains an integer CA which indicates the number of test cases.
Then CA cases follow.
Each case contains two parts,the students' courses information and the query.

In
the first part ,first there is an integer N(N<200) which means the
number of the student,and then comes the N students’ courses
information.
A student's courses information is in this format:

line1: name K
line2: day1 b1 e1
.....
lineK+1: dayK bK eK

The
first line of a student's courses infomation contains his name(less
than 20 characters and in lowercase) and the number(K,K<1000) of his
courses . Then next K lines describe his courses. Each Line contain
three integers indicate the day of a week( 1 <= day <= 7 means
Monday to Sunday ), the begin time and the end time of the course.
To
make the problem easier,the begin time and the end time will be in the
range from 1 to 11 .(Because in HDU,there is 11 classes one day).

In the query part , first there is an integer Q which means the query number,and then Q lines follow.
A
query contains three integers which means the day ,the begin time and
the end time of the spring-outing.And the time is described as the
courses.
Notice,everyone may have more than one course at the same time for some special reasons.

 
Output
For each query , just print the names of the students who can't go out for a spring-outing in a line in lexicographic order.
Please separate two names with a blank.
If all of the students have time to go , just print "None" in a line.
 
Sample Input
1
3
linle 3
1 1 2
2 3 4
3 8 10
laili 1
4 1 4
xhd 2
1 2 4
4 5 6
3
1 2 2
4 4 5
5 1 2
 
Sample Output
linle xhd
laili xhd
None
 
Author
linle
 
Source
 
 
 
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std;
int Map[][][];
char str[][];
char tstr[][];
bool ans[];
int cnt[];
int main(){
int tt;
scanf("%d",&tt);
while(tt--){
memset(Map,,sizeof(Map));
memset(str,,sizeof(str));
int n;
scanf("%d",&n);
for(int i=;i<=n;i++){
getchar();
int k;
scanf("%s %d",str[i],&k);
for(int j=;j<=k;j++){
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
for(int z=b;z<=c;z++){
Map[i][a][z]=;
}
}
}
int q;
scanf("%d",&q); for(int i=;i<=q;i++){
memset(ans,false,sizeof(ans));
memset(cnt,,sizeof(cnt));
int t,t1,t2;
scanf("%d%d%d",&t,&t1,&t2);
for(int j=;j<=n;j++){
for(int k=t1;k<=t2;k++){
if(Map[j][t][k])
ans[j]=true;
}
}
int Count=;
for(int j=;j<=n;j++){
if(ans[j])
cnt[++Count]=j;
} if(Count==)
printf("None\n");
else{
for(int ii=;ii<Count;ii++){
for(int jj=ii+;jj<=Count;jj++){
if(strcmp(str[cnt[ii]],str[cnt[jj]])>){///此步应该特别注意
int temp1=cnt[ii];
cnt[ii]=cnt[jj];
cnt[jj]=temp1;
}
}
}
for(int qq=;qq<=Count;qq++){
printf("%s%c",str[cnt[qq]],qq==Count?'\n':' ');
}
}
}
}
return ;
}

HDU 1707 简单模拟 Spring-outing Decision的更多相关文章

  1. (反射+内省机制的运用)简单模拟spring IoC容器的操作

    简单模拟spring IoC容器的操作[管理对象的创建.管理对象的依赖关系,例如属性设置] 实体类Hello package com.shan.hello; public class Hello { ...

  2. 简单模拟 Spring

            简单的理解Spring的实现过程,模拟了Spring的读取配置文件 项目结构

  3. 一道面试题,简单模拟spring ioc

    自己实现的,程序写的土了点,很多情况没去考虑,主要是复习理解怎么使用反射来实现spring 的依赖注入. package dom4jtest; import java.lang.reflect.Inv ...

  4. hdu 5099 简单模拟(比较型号)

    http://acm.hdu.edu.cn/showproblem.php?pid=5099 比较两个安卓手机型号,水题 注意点:A is actually implicit and usually ...

  5. 简单模拟Spring的注入

    主要就是读XML技术和反射技术. 在xml中读出相关配置信息,然后利用反射将其实例化为对象,并调用其构造方法,在实例化的过程中将属性注入实例. 实例化和属性注入这些操作都交给了框架,不再需要自己的去n ...

  6. HDU 1234 简单模拟题

    题目很简单不多说了,我只是觉得这题目的输入方式还是很有特点的 #include <cstdio> #include <cstring> #include <algorit ...

  7. 简单模拟Spring管理Bean对象

    1: 首先我们要利用dom4j进行xml的解析,将所有的bean的配置读取出来. 2:利用java的反射机制进行对象的实例化. 3: 直接获得对象 package cn.Junit.test; imp ...

  8. hdu 4858(简单模拟)

    项目管理 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  9. 【Spring系列】- 手写模拟Spring框架

    简单模拟Spring 生命不息,写作不止 继续踏上学习之路,学之分享笔记 总有一天我也能像各位大佬一样 一个有梦有戏的人 @怒放吧德德 分享学习心得,欢迎指正,大家一起学习成长! 前言 上次已经学习了 ...

随机推荐

  1. linux下定时任务的使用

    使用方法 执行crontab -e命令会进入一个可编辑界面,在该界面中我们可以制定定时任务,然后保存退出(wq) 格式如下: 由于直接运行编辑命令后只是一个空白界面,不够友好,所以建议使用以下方式来增 ...

  2. ThreadLocal模式的核心元素

    首先来看ThreadLocal模式的实现机理:在JDK的早期版本中,提供了一种解决多线程并发问题的方案:java.lang.ThreadLocal类.ThreadLocal类在维护变量时,世纪使用了当 ...

  3. “耐撕”团队 2016.03.30 站立会议

    1. 时间: 16:45--17:05  总计:20分钟 2. 成员: Z 郑蕊 * 组长 (博客:http://www.cnblogs.com/zhengrui0452/), P 濮成林(博客:ht ...

  4. Future模式

    Future模式简介 Future模式有点类似于网上购物,在你购买商品,订单生效之后,你可以去做自己的事情,等待商家通过快递给你送货上门.Future模式就是,当某一程序提交请求,期望得到一个答复.但 ...

  5. Qt模型/视图框架----简单的例子

    #include<qapplication.h> #include<qfilesystemmodel.h> #include<qtreeview.h> #inclu ...

  6. hdu3397 线段树 成段更新

    这题真的呵呵了.敲了很长时间,调了很多bug,把0 1 输出,解决了.最后想取反,怎么搞都有bug, 最后还是看了大牛们的博客.不过这题真的敲得爽,调bug时基本把线段树过程全部弄了一遍. #incl ...

  7. Ajax、反向Ajax和WebSocket 概念

    Ajax 异步的JavaScript和XML(Asynchronous JavaScript and XML,Ajax),一种可通过JavaScript来访问的浏览器功能特性,其允许脚本向幕后的网站发 ...

  8. codevs1746 贪吃的九头龙

    [问题描述]传说中的九头龙是一种特别贪吃的动物.虽然名字叫“九头龙”,但这只是说它出生的时候有九个头,而在成长的过程中,它有时会长出很多的新头,头的总数会远大于九,当然也会有旧头因衰老而自己脱落.有一 ...

  9. Nagios安装部署和介绍(一)

    一.软件版本下载 Nagios版本下载地址: http://prdownloads.sourceforge.net/sourceforge/nagios/ http://sourceforge.net ...

  10. js正则表达式中的问号几种用法小结

    这篇文章主要介绍了js正则表达式中的问号几种用法,比如+?,*?,{2,3}?可以停止匹配的贪婪模式,感兴趣的朋友可以参考下 在表示重复的字符后面加问号,比如+?,*?,{2,3}?可以停止匹配的贪婪 ...