Skip to content

Instantly share code, notes, and snippets.

@sankichi92
Created October 14, 2020 00:42
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sankichi92/4e77203d7cd022f03bb1b95138c8b3f2 to your computer and use it in GitHub Desktop.
Save sankichi92/4e77203d7cd022f03bb1b95138c8b3f2 to your computer and use it in GitHub Desktop.
Cookpad Online Summer Internship 2020 コーディングテスト

Cookpad Online Summer Internship 2020

120 minutes

Q1

3 * 3 の各マス目に 1 から 3 までの数字のいずれかが配置されています。全ての行、列について同じ数字が重複して配置されていないかどうかを調べ、重複がある場合は invalid 、重複が無い場合は valid と表示するプログラムを作成してください。データは、列がスペース区切り、行が改行区切りの形式で、テキストファイルとして与えられます。

データ形式

1 2 3
2 3 1
3 1 2

実行例

$ ruby solve.rb square.txt
valid

Q2

毎日、価格が変化するカブがあり、それを売買をすることで利益を上げることができます。カブ価の時系列推移データを与えられたときに、そのデータのどの金額で購入して、どの金額で販売すれば最大の利益を上げられるかを表示するプログラムを作成してください。ただし、カブを購入する前に販売することはできません。また、カブ価は1以上の整数で、カブ価の時系列推移はスペースで区切られたテキストファイルで与えられます。

データ形式

105 121 51 102 115 65

実行例

$ ruby solve.rb prices.txt
buy 51, sell 115

Q3

dragon、griffin、medusa、troll、vampireの5匹のモンスターがいます。APIサーバーにそのうちの2匹を指定すると、対戦をさせた結果を得ることができます。モンスターの強さは決まっていて、同じモンスター同士であれば、対戦の結果は常に変わりません。このAPIサーバーをつかって、5匹のモンスターを強い順に並べてください。

API アクセス例

$ curl https://ob6la3c120.execute-api.ap-northeast-1.amazonaws.com/Prod/battle/dragon+griffin
{"winner":"dragon","loser":"grifin"}

実行例

$ ruby solve.rb
dragon, griffin, medusa, troll, vampire
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment