1.水果开会时段
每个百度工程师团队都有一笔还算丰裕的食品经费,足够每天购置多种水果。水果往往下午送达公司前台。前台的姐姐们只要看到同时出现五种或以上的水果,就称之为“水果开会”。
从搜索引擎切词的语法角度,只要两种水果的名字中有一个字相同就属于同样的类别。例如“小雪梨”和“大雪梨”是同一种水果,而“核桃”和“水蜜桃”也被认为是同一种水果。尤其要指出的是,如果有三种水果x, y, z同时在前台出现,且x和y是同一种水果,y和z也是同一种水果的时候,x和z在此时也被认为是同一种水果(即使x和z并不包含相同的字)。现在前台的姐姐们想知道,今天是否有“水果开会”——五种或更多的水果同时在前台出现。
输入格式
输入的第一行只有一个整数n,表示购置水果的组数。接下来的n行表示水果的到达时间、取走时间(时间用1200到1900之间的正整数表示,保证取走时间大于到达时间)。剩下的字符串以空格分割每一种水果。如“1400 1600 雪梨水蜜桃”,表示下午两点到四点(包含两点和四点这两个时间点),雪梨和水蜜桃会在前台等待开会。每种水果名称由不超过十个汉字组成。
输出格式
输出仅一行,包含一个字符串Yes或No,分别表示今天水果开会与否。
输入样例1 例
3
1200 1400 雪梨柠檬
1300 1400 西瓜苹果
1400 1800 花生水蜜桃
输出样例1 例
Yes
输入样例2 例
3
1200 1400 雪梨柠檬
1400 1500 哦大梨呀
1500 1800 咦大梨
输出样例2 例
No
样例解释
在样例1中,时刻1400有六种水果在前台;在样例2中,由于雪梨和大梨在任何时刻都是同一种水果,最多只有四种水果同时在前台。
评分规则
程序将运行在一台Linux机器上(内存使用不作严格限制),在每一测试用例上运行不能超过1秒,否则该用例不得分;
要求程序能按照输入样例的格式读取数据,按照输出样例的格式将运行结果输出到标准输出上。如果不能正确读入数据和输出数据,该题将不得分;
该题共有10个测试数据集,每组数据均满足n<=10,每个时段最多有10个水果,一共不超过50个水果;
该题目20分。
2.大话西游与数字游戏
“叉烧鸡翅膀,我呀最爱吃!……”
百度spider组的“黑龙潭之行”在烤着鸡翅,唱着星爷的经典时达到高潮。大家在篝火旁围成一圈,开始玩“数7”加强版游戏,规则如下:
规则1:遇7的倍数或含7的数时pass。
规则2:遇有包含相同数字的数时pass。注意相同数字不必相邻。例如121。
数错的惩罚很残酷——吞食烤全羊。为避免惩罚,百度工程师们需要你——史上最强程序员的帮助。百度工程师想知道:
req1 x:符合规则1的第x个数是什么?
req2 y:符合规则2的第y个数是什么?
req12 z:同时符合规则1、2的第z个数是什么?
query n:数n是规则1中的第几个数,是规则2中的第几个数?
输入格式
输入的每一行为一个查询,由一个查询词和一个无符号整型数组成。共有四种查询,查询词分别为req1、req2、req12、query(区分大小写)。
输出格式
前三种查询输出一个无符号整型的解。对于“query n”的查询,若n是规则中的数则输出相应的解,否则输出-1。
输入样例 例
req1 10
req2 10
req12 10
query 14
评分规则
1. 程序将运行在一台Linux机器上(内存使用不作严格限制),在每一测试用例上运行不能超过1秒,否则该用例不得分;
2. 要求程序能按照输入样例的格式读取标准输入数据,按照输出样例的格式将运行结果输出到标准输出上。如果不能正确读入数据和输出数据,该题将不得分;
3. 该题目共有10个测试数据集,其中数据1~5主要考查正确性,满足x,y,z,n<=1000;输入6~10主要考查时间效率,满足x<=10,000,000,y<=1,000,000,z<=240,000,n<=20,000,000。数据1和6只包含req1,数据2和7只包含req2,数据3和8只包含req12,数据4和7只包含query,数据5和10包含全部四种查询。每组数据都恰好包含100个查询。
4. 该题目20分。
3.繁忙的会议室预定问题
百度由最开始的7人团队迅速发展为几千人的大团队,而工程师们经常需要在一起进行“头脑风暴”,这样会议室就成了紧缺资源。为了有效利用资源,大家决定制定规则,自动安排会议室的使用。
为了公平起见,应按照申请时间从早到晚依次考虑,先到先得,且申请一旦被接受就不能取消。在处理每条请求时,只要当前请求可以和前面已接受的所有请求同时满足时就必须被接受(如有必要,可以调整给已接受申请安排的会议室和开会时间)。注意同一时间开的不同会议必须在不同的会议室,而同一个人不能同时参加两个会议。
输入格式
输入第一行为会议室总数n和请求总数m;第二行是n个整数,表示会议室能够容量的人数。以下m行每行是一个请求,按请求时间先后顺序排列(即应优先满足在输入中更早出现的请求)。
每个请求中第一个是整数,表示会议需要的时间长度(单位:小时);之后为与会人名单。人名由不超过四个汉字组成,用半角逗号分隔(每人名字固定且唯一,有重名的也在登记时区分开)。名单后的数字表示可以安排会议的时间,也以半角逗号分隔,如 10,11,14,15 表示第10, 11, 14, 15个小时可以开会(会议时间为9到19之间的正整数)。
输出格式
输出m行,依次表示每个请求是否被接受。1表示接受,0表示不接受。
输入样例:例
2 4
20 2
3 张三,李四,王五 10,11,12,14,15
1 张三 12
4 王六,王七,王八,王九,王十 9,10,11,12,13,14,15
2 张三 14,15
输出样例:例
1
0
0
1
样例解释
请求1可以满足,因此接受;在请求1接受的前提下请求2和请求3都无法满足,因此不接受。请求1和请求4可以同时满足(都在会议室1,前者用时间10~12,后者用时间14~15)。需要特别注意的是:如果没有请求1,后三个请求可以同时满足。但是规则是先到先得,请求1只要可以满足就必须接受。
评分规则
程序将运行在一台Linux机器上(内存使用不作严格限制),在每一测试用例上运行不能超过2秒,否则该用例不得分;
要求程序能按照输入样例的格式读取数据,按照输出样例的格式将运行结果输出到标准输出上。如果不能正确读入数据和输出数据,该题将不得分;
该题共有15个测试数据集,均满足n<=10,m<=10。每个会议最多有10人参加;
该题目30分。
4.SQL中的SELECT语句
SQL中的SELECT语句用于从数据库中查询记录。某个工程项目数据库中有一个所有数据均为字符串的表,需要查询一些满足条件的记录数。本题考虑SELECT语句的简化形式,相关语句格式如下:
1. 计数语句,查询满足条件的记录条数。有两种格式:
格式1:SELECT COUNT(*) <FROM子句> WHERE <条件>
格式2:SELECT COUNT(*) <FROM子句>
2. 子集选择语句,选择满足条件的记录并组成一个集合。有两种格式
格式1:SELECT * <FROM子句> WHERE <条件>
格式2:SELECT * <FROM子句>
上述两种语句中的FROM子句具有相同的格式:
格式1:FROM <TABLENAME>
格式2:FROM (子集选择语句)
其中TABLENAME为该工程中惟一的表名,子集选择语句即上述用SELECT *开头的语句。
条件的格式为一条或多条<FIELD>=<VALUE>用关键字and连接(不区分大小写),其中FIELD为字段名,VALUE为数据值,它们均为由大小写字母和数字组成的长度不超过10的非空字符串。该条件表示所有特定的字段必须等于给定值。
给定表中的所有记录和若干条计数语句,输出所有语句的结果。
输入格式
输入第一行为三个整数c, n, q,分别表示数据库中表的列数、记录数和查询次数;第二行为表名(即TABLENAME);第三行为表中的c个字段名(FIELD),之间用一个或多个空格隔开,字段名各不相同;接下来n行,每行表示一个记录,有c个数据值(VALUE),之间用空格隔开;接下去有q行,每行一条SELECT记录数语句,该语句长度(包括空格)不超过1000。输入数据保证每条语句满足题目中给出的计数语句的定义,并且FROM子句的格式1中出现的表名和输入的表名一致。
输出格式
输出q行,每行一个整数,表示相应语句输出的结果(即满足条件的记录数)。
输入样例例
4 5 6
Book
BookName Price PublishDate Author
NBAsports 10 2004 dearboy
SQL 20 2002 absorbed
IntrotoAlgorithm 59 2002 Thomas
MultipeView 60 2002 RichardHautley
NBAsports 10 2004 dearboy
SELECT COUNT(*) FROM Book WHERE BookName=NBAsports and Author=dearboy
SELECT COUNT(*) FROM Book WHERE Price=20
SELECT COUNT(*) FROM Book WHERE Author=lala
SELECT COUNT(*) FROM (SELECT * FROM Book WHERE BookName=NBAsports)
SELECT COUNT(*) FROM (SELECT * FROM Book WHERE BookName=NBAsports) WHERE Price=20
SELECT COUNT(*) FROM Book
输出样例例
2
1
0
2
0
5
评分规则
程序将运行在一台Linux机器上(内存使用不作严格限制),在每一测试用例上运行不能超过2秒,否则该用例不得分;
要求程序能按照输入样例的格式读取数据,按照输出样例的格式将运行结果输出到标准输出上。如果不能正确读入数据和输出数据,该题将不得分;
该题共有10个测试数据集,数据1的表与样例相同,并包含15条SELECT语句。数据2,3,4,5的表分别有1,2,5,7列,数据6~10的表均有8列。数据2~5的表均有恰好1000条记录,并包含100个SELECT语句。数据6~10的表不超过3000条记录,并包含不超过20000条SELECT语句。本题的后5组数据着重考查程序的时间效率;
该题目30分。
分享到:
相关推荐
根据给定的信息,我们可以分析出这是关于Astar2007百度之星程序设计大赛网络资格赛(初赛)的相关题目及解析。以下是对各题目所涉及的知识点进行详细阐述: ### 第一题:时间线问题 #### 题目描述: 本题要求处理...
这是一份关于2006年百度之星程序设计大赛的题目集,它包含了当年比赛的所有编程挑战。百度之星程序设计大赛是针对广大计算机科学和技术爱好者举办的一项年度竞赛,旨在考察参赛者的编程能力、算法理解以及问题解决...
【描述】的简洁性表明,这是一个关于2006年百度之星(Astar2006)程序设计大赛的资料集合,主要包含题目文档和参考源代码。这提示我们,该资源可能是为参赛者或对编程竞赛感兴趣的个人提供的一种学习材料,帮助他们...
Astar2009百度之星程序设计大赛(初赛)试题1
Astar2009百度之星程序设计大赛(初赛)试题2正是这样一个旨在挑战与提升参赛者编程水平的活动。本次比赛,参赛者面临的问题不仅是编写出能够解决问题的程序代码,还需要在有限的时间内、严格的要求下,使程序运行...
在2006年的百度之星程序设计大赛中,第一轮共有6道题目。这些题目通常涵盖了基础算法、数据结构、逻辑推理等多个方面,旨在考察参赛者的综合编程能力。以下是可能涉及的一些知识点: 1. **基础算法**:如排序(快速...
百度AStar2006参考源码,是百度在2006年举办的“百度之星”编程大赛中的一个重要组成部分。这场赛事旨在激发程序员们的创新精神和算法能力,尤其是对人工智能领域的理解和应用。其中,AStar(A*)算法作为经典的路径...
在实际编程实现中,如`Astar1.cpp`,我们通常会定义一个结构体(如Node)来存储每个状态的信息,包括当前状态、父节点、G值、H值以及F值。然后,我们用优先队列(如二叉堆)来管理开放列表,以高效地找到F值最小的...
1. 初始化:创建一个空的开放列表(通常使用二叉堆实现)和一个封闭列表。 2. 将起始节点加入开放列表,设置其G值(实际代价)为0,H值(启发式代价)根据预估路径计算,F值(总代价)为G + H。 3. 当开放列表非空时...
标题中的"Astar.zip"指的是一个包含了与A*(Astar)算法相关的文件的压缩包,这个算法主要用于寻找图形或网格中的最短路径。A*算法是Dijkstra算法的一个改进版本,它结合了最佳优先搜索和启发式信息,提高了路径搜索...
【描述】:“2007年百度程序设计大赛Astar初赛题,实习生小胖的百度网页过滤器,老师给我选的软件工程课程设计,其实只是一个简单的程序。基础比较好的朋友可以参考,基础一般的可以学学。” 这段描述提供了更多...
Astar算法,也称为A*搜索算法,是一种在图形中寻找从起点到终点最短路径的启发式搜索算法。它结合了Dijkstra算法的最优化路径寻找和BFS(广度优先搜索)的效率,通过引入启发式函数来降低搜索空间,从而提高搜索效率...
Astar算法,也称为A*搜索算法,是路径搜索领域的一种广泛应用的算法,它结合了最佳优先搜索(如Dijkstra算法)和启发式搜索(如Greedy Best-First Search)的优点。在C#中实现Astar算法,可以用于解决游戏中的寻路...
这个压缩包文件"Java_astar代码完成_scalee1h_astar算法java"包含了AStar算法的源代码实现和一个演示JAR文件,帮助开发者理解和使用该算法。 AStar算法的核心思想可以概括为以下几个部分: 1. **启发式函数**:...
Astar算法,也常写作A*,是一种在图形搜索中广泛应用的启发式搜索算法,用于找到从起点到目标节点的最短路径。在八数码问题(又称滑动拼图游戏)中,Astar算法能够有效地解决如何通过最少的步数将打乱的数字方块恢复...
AStar寻路算法是一种在图形或网格中寻找最短路径的经典算法,被广泛应用于游戏开发、地图导航等领域。C#是一种常用的编程语言,尤其在Windows应用程序和Unity游戏引擎中非常流行。下面我们将深入探讨AStar算法的核心...
3. **路径规划**:在程序中实现Astar算法,根据地图和传感器数据计算路径。 4. **控制机器人**:将规划出的路径转换为控制命令,通过Player发送给机器人。 5. **反馈与调整**:实时监控机器人的位置和状态,根据...
1. **网格化**:首先,将环境表示为一个二维网格,每个单元格代表一个位置,可以是无障碍或障碍物。 2. **初始化**:创建一个空的开放列表和关闭列表,开放列表存放待处理的节点,关闭列表存放已处理的节点。起点被...
05astar第一题程序