未知の言語ラウンド



ここでは、多くの人が慣れているスポーツプログラミングについて少し説明します。 最近、

Codeforceは実験的なUnknown Language Round#1ラウンドを実施しました。

それで、参加者はいくつかの簡単な問題を解決するように頼まれました( 最初

第二 、それがすべてです

残り )。 ラウンドの機能-タスクは1つのプログラミング言語でのみ解決できます。

ラウンドの開始前に参加者に知られていません。 言語はそうではないと発表された

主流の言語。 言い換えれば、参加者は2.5時間以内に競争の速度を把握するように求められました

なじみのない言語で、問題を解決します。





このラウンドの言語はTclでした。 に書かれているように

ウィキペディア:「Tcl(英語版。ツールコマンド言語-「ツールのコマンド言語」、「tickle」または「t-si-el」を読む)

-高レベルのスクリプト言語。」

また、参加者には最も単純なTclプログラム(2つの整数を追加)と書き込み機能が与えられました

サーバー側で実行する機能を備えたWYSIWYGエディターのコード(ダウンロードおよび/またはインストールしたくない人向け)

通訳者)。 こちらが公式投稿へのリンクです

コードフォースとディスカッションラウンド



結果は予想を上回りました。 多くの参加者は、見慣れない人の構文と基本をすぐに理解しました。

言語とすぐに問題を解決し始めました。 エレガントなソリューションを作成することさえできました。 ここで、たとえば、上のコード

シンプルですが、それでもタスクです。 要するに、それはする必要があります

テーブルの行をいくつかの基準でソートしていましたが、

また、入力で与えられます。



set a [split [gets stdin]] set rules [split [gets stdin] ","] while {[gets stdin line]>=0} { lappend li $line } set rules [lreverse $rules] foreach {line} $rules { scan $line {%s %s} cname order set li [lsort [expr ([string equal $order "ASC"]?"-increasing":"-decreasing")] -index [lsearch $a $cname] $li] } foreach {line} $li { puts $line }
      
      





競争の後、より短くよりエレガントなコードが引き渡されました。



レビューから判断すると、この体験は成功しました。 多くの参加者がこのエンターテイメントを気に入りました。 どうやらキャッチ

ある種のドライブ、言語の理解、新しい何かに素早く浸透する能力の競争。



「このようなエンターテイメント」は私が最初に提案したもので、5年前のようです。

サラトフ州立大学ミランティス社が実施

年次JavaおよびC / C ++コース。 私はJavaコースを教えています。たとえば、2、3日前の2番目のレッスンで既にトピックが難しい場合があります。

Javaでのクラスローディングの仕組み、カスタムローダーの作成方法を学びました。 コース参加者の選択は簡単な作業ではありません。 希望する人は50-100人来ますが、選択する必要があります

2つのグループのそれぞれに10人。 私は簡単な問題を解決することから成る選択を提案しました

なじみのない言語。 それは簡単に自動化され、あなたがすぐに学ぶ能力を評価することができ、原則として人の書く能力を証明します

このプログラムは、特定の分野における候補者の知識に依存せず、任意の数の候補者に簡単に拡張できます。 おそらく過去5

何年もその有効性を証明しています-人々は必要なコースに選ばれています

働く。



最近、イランのユーザーから実験を繰り返すように依頼されました。 彼らは

タスクが準備され、 不明言語第2ラウンドが3月20日(イランの大ve 日)に予定されました。 もちろん

ラウンドの言語は異なります。 どっち? これまでの秘密:)ここに公式の投稿と議論へのリンクがあります。



このような珍しいコンテストに参加して参加することをお勧めします。 これで

期間が3時間になると、 3月20日の開始は19:00(モスクワ時間)になります。

Codeforceでの登録を簡素化するには、Gmail、OpenIDを使用できます

さらにVKontakteアカウントも。



いくつかのリンク:






All Articles