前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ThoughtWorks 百年不变的面试题之 --- Merchant's Guide To The Galaxy

ThoughtWorks 百年不变的面试题之 --- Merchant's Guide To The Galaxy

作者头像
KurtNiu
发布2018-09-10 17:41:07
3.5K0
发布2018-09-10 17:41:07
举报
文章被收录于专栏:Kurt Niu 的博客Kurt Niu 的博客

ThoughtWorks 百年不变的面试题之 --- Merchant's Guide To The Galaxy

Code: https://github.com/zifeiniu/Merchants-Guide-To-The-Galaxy

我选的第三道,罗马数字转换。。

题是做完了,也算对了。但是你就别抄了,因为没过。。 挂的原因之一是没有写ReadMe,所以我现在多写点ReadMe. 还有因为有面向过程的思想,没有使用最新语法(这也算被拒的理由)。

今年不适合跳槽啊,先去葡萄城面试,前三关都过了,最后一关(传说中面试思想)三个boss围着小圆桌,问:你要是和上司吵架了怎么办?然后我就被拒了。

有意思的是面试前三关出的算法题,我都答出来了,但是答案和他们想的不一样。然后他们就说其实还可以这样XXXXXX,最后我发现他们给的答案逻辑都有问题,被我指出了,当然是没办法拒了。

想起来挺悲剧,我也是一个五十多人的软件公司的技术总监,居然连ThoughtWorks机试题都没过。

-----------------------

最近朋友又去面试,我拿出来Push到Github上练练手。 大概讲一下,两个系统,一个问答系统 Analysis ,就是根据用户输入回答的。还有一个罗马数字转换系统RomanSystem,用户转换的。 记得要写ReadMe。 记得要写ReadMe。 记得要写ReadMe。

题目:

Description

You decided to give up on earth after the latest financial collapse left 99.99% of the earth's population with 0.01% of the wealth. Luckily, with the scant sum of money that is left in your account, you are able to afford to rent a spaceship, leave earth, and fly all over the galaxy to sell common metals and dirt (which apparently is worth a lot).

Buying and selling over the galaxy requires you to convert numbers and units, and you decided to write a program to help you. The numbers used for intergalactic transactions follows similar convention to the roman numerals and you have painstakingly collected the appropriate translation between them.

Numbers are formed by combining symbols together and adding the values. For example, MMVI is 1000 + 1000 + 5 + 1 = 2006. Generally, symbols are placed in order of value, starting with the largest values. When smaller values precede larger values, the smaller values are subtracted from the larger values, and the result is added to the total. For example MCMXLIV = 1000 + (1000 − 100) + (50 − 10) + (5 − 1) = 1944.

The symbols "I", "X", "C", and "M" can be repeated three times in succession, but no more. (They may appear four times if the third and fourth are separated by a smaller value, such as XXXIX.) "D", "L", and "V" can never be repeated. "I" can be subtracted from "V" and "X" only. "X" can be subtracted from "L" and "C" only. "C" can be subtracted from "D" and "M" only. "V", "L", and "D" can never be subtracted. Only one small-value symbol may be subtracted from any large-value symbol. A number written in Arabic numerals can be broken into digits. For example, 1903 is composed of 1, 9, 0, and 3. To write the Roman numeral, each of the non-zero digits should be treated separately. In the above example, 1,000 = M, 900 = CM, and 3 = III. Therefore, 1903 = MCMIII.

Input to your program consists of lines of text detailing your notes on the conversion between intergalactic units and roman numerals.

You are expected to handle invalid queries appropriately.

INPUT: glob is I prok is V pish is X tegj is L glob glob Silver is 34 Credits glob prok Gold is 57800 Credits pish pish Iron is 3910 Credits how much is pish tegj glob glob ? how many Credits is glob prok Silver ? how many Credits is glob prok Gold ? how many Credits is glob prok Iron ?

OUTPUT pish tegj glob glob is 42 glob prok Silver is 68 Credits glob prok Gold is 57800 Credits glob prok Iron is 782 Credits

我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=36vhfka3k3cwg

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-08-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ThoughtWorks 百年不变的面试题之 --- Merchant's Guide To The Galaxy
  • -----------------------
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档