编程介的小学生 2019-03-06 23:37 采纳率: 20.5%
浏览 218

顺序重排的算法的问题,输出可行性判断,采用C语言的算法思路的实现

Problem Description
Bob is a journalist, nowadays,he has a trouble. You know ,the Olympic Games is around the corner, as a fan of athletic sports, he certainly wants to see the Olympic Games, but as a journalist, the Olympic Games seems to be the busiest time,because Bob needs to report so many games.Fortunately , he has a kind boss.He gives Bob a target, as long as Bob meets the requirement, he can go home to see the Olympic Games.
Now,the boss gives every competition a value, which represents the importance of the competition.As long as the sum of the competitions' value that Bob reported is not less than the target, he can go home.Although there are a lot of competitions every day,some competitions may take at the same time, so Bob can only choose some competitions to report.Now the problem is what's the earliest time that Bob can go home?
To finish his work more easily, Bob gets some information about the competition.He finds every day is divided into 24 parts and every competition takes up at most 2 parts.There are 3 kinds of competitions:the first one only takes up 1 part of a day;the second one takes up two successional parts
of a day,it means the competition will hold at the p day's q and (q+1) part;the third one is special,it is held at two successional days,it means the competition will hold at the p and p+1 days' q part(ie.If a competition is held at the 2 day's 3 part, it will also take up the 3 day's 3 part.)
Meanwhile Bob finds two competitions' first parts will not coincide,and two competitions' second parts will not coincide .

Input
The first line contains the number of cases.
For each case, there are several lines represent the information of the competitions (The number of competitions will not exceed 1150).Each line includes p : the start day of the competition (0 <= p <50); q : the start part of the competition (0 <= q <23) ; a string s represents the form of the competition ( "first" or "second" or "third" as recorded above ) ) the last one is the value of the competition m (0 <m <1000). Separate line with -1 means the end of the competition. Then a line with a num, need (0 <= need <2000000), means the boss's target.

Output
For every case ,output the earliest day that Bob can go home.If it is impossible,output "what a pity!"

Sample Input
2
0 17 third 999
-1
990
0 1 second 90
0 2 first 900
-1
990

Sample Output
1
what a pity!

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥30 求一段fortran代码用IVF编译运行的结果
    • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
    • ¥15 lammps拉伸应力应变曲线分析
    • ¥15 C++ 头文件/宏冲突问题解决
    • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
    • ¥50 安卓adb backup备份子用户应用数据失败
    • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
    • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
    • ¥30 python代码,帮调试,帮帮忙吧
    • ¥15 #MATLAB仿真#车辆换道路径规划