パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

プログラム言語で上位1%になる方法

2021-11-02 | 速攻で言語マスターしてみませんか

類似系の言語なら、2時間でマスターできます。

 

今日はPascal、Kotlin、Scala、groovyに挑戦してみました。

最初はチートシートを作って挑んでいたのですが、慣れてくると使ったことのない言語でも

その系統の言語をやっていれば、サイトを5つぐらい事前に探しておいて、

ループと条件分岐の知識が必要なTutorial問題を解けばなんとかなります。

 

Kotlin、Scala、groovyはJavaの派生言語で3兄弟ともいえます。

 

古い言語は今なら基本的な関数がなかったりして一手間かかります。

既存の関数をうまく使って、本来の解法ではない方法などをみつけたりもします。

 

調べ方のコツみたいなものも少しわかってきました。

「操作」を足して使うとまとまっているサイトがみつかりやすいです。

文字列検索、文字列置換だと該当のサイトにヒットするのですが、その情報にたどりつくまで時間のかかるサイトが多いです。

 

言語名 + 文字列操作、 配列操作などと操作を入れるといい感じにまとめてあるサイトにヒットする確率が高くなります。

そこで今回は 文字列操作 配列操作 条件分岐 繰返し(操作でヒットしにくいものもあります)などで検索して

5つぐらいのサイトを並べ、それで足りない個別のものは都度検索で対応してみました。

 

現時点の成績

>99%表示はたぶん満点。99%より低いものでも言語によってはトップ1%に到達します。

Pascalは相当苦労したのですが、76%(点)でも上位1%に到達していました。

下のほうに表示している言語ほど苦手としている言語です。

 

各言語試験内容は極秘事項なんでしょうが、

こちらはテスト前に操作確認をするTutorialで練習問題を解いている風景です。

 

Pascal

 

Kotlin

 

Scala

 

Groovy

 

CodinGameのClash of Codeをだいたい解ける人はできると思います。

ただ問題文は英語でCodinGameの他の問題のようにコピペができないので、

私のように英語が苦手な人はテストケースと合われて類推する必要があります。(または経験済み)

 

もう半分ぐらいは忘れています。

 

 


最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。