英文地址:here
本文仅作学习之用,题目的测试用例下载及答案的上传请到上面的英文地址,有不专业或者错误还请指正。

拯救宇宙

问题

都市里传说如果你去Googl的主页并且搜索"Google”,那么宇宙就会爆炸。我们告诉你一个秘密:这是真的!千万不要尝试或者告诉任何人。

好吧,也许不会爆炸。我们开了个玩笑而已。

这在另外一个很远很远的宇宙确实真的。在那个地方,如果你在任何搜索引擎上搜索那个引擎的名字,那么它就会爆炸。

为了与这种情况抗争。人们想到了一个有意思的解决办法。所有的请求被集合起来,然后传送到一个中央系统去决定每个请求用那个搜索引擎。中央系统发送一系列的请求到一个搜索引擎,并能在任何时候切换到另外一个引擎。所有的请求必须按照收到的顺序处理。中央系统一定不能把请求发送到名字与之相同的搜索引擎上。为了降低成本,需要切换的次数为最小。

你的任务是告诉我们中央系统需要在各个搜索引擎之间切换多少次,假设我们已经把中央系统最优化了。

输入

输入文件的第一行是测试用例的数目:N。接下来是N个测试用例。

每个测试用例以一个数字S开始:搜索引擎的数目。接下来的S行,每一行包含一个搜索引擎的名字。每个搜索引擎的名字不超过100个字符并且只包含大小写字母,空格和数字。而且他们不会重名。

接下来是包含一个数字Q的一行:请求的数目。再接下来的Q行每一行包含一个请求。在测试中每个请求都是一个搜索引擎的名字。

输出

对于每一个测试用例,你应该输出:

Case #X: Y

X表示第几个测试用例,Y表示切换搜索引擎的数目。对初始搜索引擎的选择不计算为一个切换。

限制

0 < N <= 20

小数据

2 <= S <= 10

0 <= Q <= 100

大数据

2 <= S <= 100

0 <= Q <= 1000

例子

输入

2
5
Yeehaw
NSM
Dont Ask
B9
Googol
10
Yeehaw
Yeehaw
Googol
B9
Googol
NSM
B9
NSM
Dont Ask
Googol
5
Yeehaw
NSM
Dont Ask
B9
Googol
7
Googol
Dont Ask
NSM
NSM
Yeehaw
Yeehaw
Googol

输出

Case #1: 1
Case #2: 0

在第一个测试中,一个可能的方案是用Dont ask 开始,然后再第8个请求后切换到NSM。

第二个测试,你可以一直用B9而不做任何切换。

转载于:https://www.cnblogs.com/gg_shily/archive/2009/08/17/1548125.html

Google code jam 2008, Qualification Round:Save the Universe, 翻译相关推荐

  1. [C++]Standing Ovation——Google Code Jam 2015 Qualification Round

    Problem It's opening night at the opera, and your friend is the prima donna (the lead female singer) ...

  2. Google Code Jam 2015 Qualification Round: Problem A. Standing Ovation

    昨天被虐的太惨,剩下的题过几天慢慢看.>< 我开始以为只要把每个是0的地方换成1就行了,后来发现之前的level如果人数多的话,后面的level是可以出现0的.== 用pre[]记录之前出 ...

  3. Google Code Jam 2008 E 日程表(最小割)

    以下内容来自ShallWe's Blog 题目 日程表 热情的选手 Sphinny 正在看新一年的日程表,并发现已经安排了很多编 程竞赛.她将这一年的每一天都用以下三种方式之一在日程表上打标记. 白色 ...

  4. Code Jam 2017 Qualification Round Problem A. Oversized Pancake Flipper

    题目 给定字符串 S 由+或-组成和 K ,现有一种操作:能将串 S 中连续 K 个字符进行反转( + 变成-以及 -变成+ ).问最少进行多少次上述操作,可以把串 S 变成全由 + 组成.当然也可能 ...

  5. Code jam 2008 practice A

    Code jam 2008 practice A A:Saving the universe B:Train timetable C:Fly swatter A: The urban legend g ...

  6. Google Code Jam程序设计大赛中国人获冠亚军

    来自 Google的官方消息,今年的Google Code Jam程序设计大赛,冠亚军都被中国人获得. 冠军是楼天城(Tiancheng Lou,来自清华大学计算机系),奖金$10,000.亚军朱泽园 ...

  7. 入职顶级互联网公司,竞争性编程是必须的吗?Google code jam King赛前采访(附有视频)

    主持人:你能告诉我一些关于你自己的事吗 受访者:就像我决定从事的竞争性编程一样,竞争性编程我不仅参加了那些比赛,高中时我在美国参加Google Code Jam,因为我进入了决赛,这是我生命中的一部分 ...

  8. 【Google Code Jam】Millionaire

    题目描述 Google Code Jam 2008APAC local onsites C 最开始你有X元钱,要进行M轮赌博.每一轮赢的概率为P,你可以选择赌与不赌,如果赌也可以将所持的任意一部分钱作 ...

  9. dp - Google Code jam Qualification Round 2015 --- Problem B. Infinite House of Pancakes

    Problem B. Infinite House of Pancakes Problem's Link:   https://code.google.com/codejam/contest/6224 ...

最新文章

  1. python过滤器 lambada表达式 可变元组字典参数**kwargs
  2. embedding 层的详细解释
  3. 与Maven的集成测试
  4. iOS sqlite
  5. 军训分批(codevs 2751)
  6. java api csdn_java api函数读出当前机器名以及版本号 csdn
  7. 【程序设计】流程图的规范和绘制
  8. android调用webservice发送header身份验证不成功
  9. 局域网传文件_Mac下最好用的跨平台文件传输工具
  10. 计算机mac地址设置路由器,路由器mac地址怎么设置
  11. Python实现Eternal Night游戏(尚未完结,不断更新)
  12. pytorch自定义Dataset,torch加载自己的numpy数据集,torch-cnn训练numpy进行回归
  13. uniapp-连接服务器超时,点击重试
  14. ajax选项卡解析,ajax实现的选项卡
  15. postgresql仅修改时间戳的时分秒写法
  16. java生成图片,特殊字符显示方框问题解决
  17. 探索 Sa-Token (三) 权限认证原理
  18. 浅析漫谈EOS之存储
  19. 支付宝支付异步回调的一些问题
  20. 20210117noteexpress云端数据库经验分享

热门文章

  1. Servlet 开发【07】Servlet两种跳转
  2. XML和JSON的比较
  3. python函数sn_Python plist.SndRcvList方法代码示例
  4. 谈论源码_为什么每个人都在谈论WebAssembly
  5. 苹果电脑裸机和不裸机的区别_将Kubernetes带到裸机边缘
  6. (26)HTML兼容写法
  7. Bootstrap清除/清理浮动
  8. HTML progress控件
  9. Git笔记(4) 获取仓库
  10. CAN笔记(2) CAN特点