数学を必要としないプログラマ向けの3つのタスク

プログラマーが数学を必要とするかどうかについての古代ホリバーは、試験に関する論争で予想外の継続を受けました。 知識をまったくテストする必要はないが、答えをすばやく検索する能力をテストするという考えは、積極的に進歩し始めました。 さて、結論として-Google / Yandexでの検索に関する選手権の試験の置き換え。 私の意見では、同じ成功を収めて、学校図書館で検索という形で試験を実施することができます。 何らかの理由で、何を探すべきかを知っている人がすぐに答えを見つける、つまり知識を持っているという明白な真実に誰も気づきません。 このアイデアを確認するために、プログラマ向けに3つのタスクを作成しました。アルゴリズムは数分で見つかります。

試してみてください。 数学の知識が豊富な人だけが迅速に対処できるように思えます。 すぐに成功できない場合は、数学を知らないと通常の質問を定式化できないために、どれだけの情報を見つけることができないかを考えてください。



タスク1:企業警備員は、4月6日(00:00から23:59まで)勤務する必要があります。 これらの6日間を00100111000の形式で整理するすべての方法を印刷します。0は休日、1は営業日です。 ガードは6日間連続で作業できます。

タスク2:会社ディレクターであるMelkosoftは、ランダムなポイントから左手のルールによって迷路をシミュレートするスクリーンセーバーを作成するタスクを設定します。 2番目のプログラマーは、接続されたラビリンスを生成する関数を作成しました(任意のポイントから任意のポイントに移動できます)が、場合によっては、左の規則によるラウンドが壁を囲む円のラウンドになります。 ラビリンスに新しい壁を追加して接続を維持する必要がありますが、ラビリンス全体がコストをかけられるわけではない円形のルートはありません。

タスク3:最初のプレーヤーにはN個のコインがあり、2番目のプレーヤーにはまったくコインがありません。 プレイヤーは誰の動きがコインを投げるかを決定します。 あなたが最初に歩いた場合、彼はテーブルにコインを1枚置きます。 2番目の場合-テーブルが空でない場合、テーブルから1枚のコインを受け取ります。 1人のプレイヤーがN個の動きをするとすぐに、もう1人のプレイヤーだけがさらに動き、N個の動きをします。 2番目のプレーヤーがすべてのコインを受け取るコインドロップシーケンスはいくつありますか?

例1:N = 4。 11112222.この一連の移動では、最初に最初のコインがN個のコインを配置し、次に2番目のコインがそれらをすべて取ります。 2番目に勝った。

例2:N = 1。 21. 2番目のプレーヤーのターンの間、テーブルはまだ空なので、彼は1枚のコインを取って負けません。



何を探しますか? 少し考えた後、私は検索エンジンに走りました。
タスク1:組み合わせを生成する

タスク2:スパニングツリー

タスク3:カタロニア語番号




UPD。 重要です



タスクは、これらの問題をいかなるコストでも解決することではなく(非常に簡単です)、インターネット上で既成のソリューションまたはアルゴリズムの説明を見つけることでした。 私はここの誰もが賢く、数学なしで何十もの方法でこれらの問題を解決すると信じています。 知識が不足していると、既成のアルゴリズムや答えを見つけるのではなく、車輪の再発明を余儀なくされることを証明しようとしていました。



UPD2。 自殺する



タスクが指から吸い出されると信じている人のために:



「適用された」問題を解決した結果が、この「指から吸い出された」問題の解決策よりも多くの人に見られたなら、あなたは自分を誇りに思うことができます。



All Articles