2014第5回JavaグループBブルーブリッジカップ州大会本当の質問

ブルーブリッジカップの長年にわたるトピックコラムです。更新され、前年度からの実際の質問と回答が公開されます。友達を歓迎して私に注意を払ってください。あなたの好きなものと注意が私にとって最高の動機です!
毎日1つの本当の質問を更新するので、お楽しみに

Lanqiaoカップの過去の論文と詳細な回答


最初の質問:武功山の攻略

タイトル説明
シャオミンはX洞窟を探索し、損傷した武道のチートブックを見つけました(2000ページ以上!もちろん偽造されています)。彼は、本の10ページと11ページが同じ紙にあるが、11ページと12ページが同じ紙にないことに気づきました。
Xiao Mingは、本の81ページから92ページまでの武道を練習したいだけですが、本全体を持ち込みたくはありません。少なくとも持ち帰るには何枚の紙をはがさなければならないのか聞いてもいいですか。
これは整数です。ブラウザから数値を送信してください。余分なコンテンツは入力しないでください。
トピック分析
トピックコード



質問2:麺を切る

トピックの説明:
真ん中でカットされた高グルテンラーメンは、2つの麺を手に入れることができます。
半分に折って真ん中で切ると麺が3本もらえます。
半分に2つ折りにして真ん中で切ると5本の麺ができます。
では、半分に10回折り、真ん中で切ると、いくつの麺がもらえるのでしょうか。
回答は整数ですので、ブラウザから送信してください。冗長なコンテンツを入力しないでください。
トピック分析
トピックコード



質問3:手紙を推測する

タイトルの説明
19文字のabcd ... sで構成されるシーケンスを繰り返し、106回スプライスして、長さ2014の文字列を取得します。次に、最初の文字(つまり、最初の文字a)と、すべての奇数位置にある3番目と5番目の文字を削除します。取得した新しい文字列は、奇数の文字を削除するアクションを実行します。これが続く場合は、1文字しか残っていません。その文字を書いてください。
答えは小文字です。ブラウザから答えを送信してください。冗長なコンテンツを入力しないでください。
トピック分析
トピックコード



4番目の質問:ダヤンシーケンス

タイトル説明
古代中国の文書には、繁体字中国語文化における太極拳の派生原理を説明するために主に使用された「ダヤンシーケンス」の記録がありました。最初のいくつかの項目は次のとおり
です:0、2、4、8、12、18、24、32、40、50 ...ルールは次のとおりです。偶数項目の場合、シリアル番号の2乗を2で除算し、奇数itemは、シリアル番号の2乗から1を引いたものです。2で割ります。
次のコードは、Dayanシーケンスの最初の100項目を出力します。

for(int i=1; i<100; i++)
{
    
    
    if(________________)  //填空
        System.out.println(i*i/2);
    else
        System.out.println((i*i-1)/2);
}

トピック分析
トピックコード



質問5:円周率

タイトル説明
数学的開発歴史の中で、円周率の計算について多くの興味深い、さらには伝説的な話がありました。これらの方法の多くは、無限級数を含みます。
図1.pngに示すように、連分数の形で表される円周率を計算する方法です。
次のプログラムは、このソリューションメソッドを実装しています。実際、シーケンスの収束はxの初期値に敏感ではありません。
結果は、円周率の概算値を出力します(小数点以下4桁を保持します。これは、必ずしも円周率の真の値と一致するとは限りません)。

    double x = 111; 
    for(int n = 10000; n>=0; n--){
    
    
        int i = 2 * n + 1;
        x = 2 + (i*i / x);
    }
    
    System.out.println(String.format("%.4f", ______________));

ここに画像の説明を挿入

トピック分析
トピックコード



質問6:奇妙な分数

タイトルの説明
小学生のとき、シャオミンはしばしば自分で新しいアルゴリズムを発明しました。かつて、先生は質問をしました:
1/4×8/5。
シャオミンは実際に分子と分母をつなぎ合わせました。答えは18/45でした(図1.pngを参照)。
先生はただ欲しかっただけです。彼を批判するために、私は考え変えました。考えて、この答えはたまたま正しい、なんて地獄だ!
分子と分母が両方とも1から9までの1桁である場合、このように他にどのような式を計算できますか?
すべての異なる計算の数を書き留めてください(質問の例を含む)。
明らかに、分子と分母を交換した後、たとえば:4/1に5/8を掛けると、要件を満たすのに十分であり、これは別の式としてカウントされます。
しかし、同じ分子と分母の場合、2/2に3/3を掛けると、タイプが多すぎて数えられません。
ここに画像の説明を挿入

注:答えは整数です(対称性を考慮すると、偶数でなければなりません)。ブラウザ経由で送信してください。余分なコンテンツを書かないでください。
トピック分析
トピックコード



質問7:ポーカーシーケンス

タイトル説明
AA2 2 3 3 4 4、合計4組のトランプ。並べてください。
要件:2つのエースの間に1枚のカード、2つの2の間に2枚のカード、2つの3の間に3枚のカード、2つの4の間に4枚のカードがあります。要件を満たすすべての順列の中で最も低い語彙の順序を入力してください。
例:22AA3344は辞書式順序でA2A23344よりも小さいです。もちろん、それらは要件に対する答えではありません。
ブラウザから回答を送信してください。「A」は小文字のaを使用してはならず、代わりに「1」を使用しないでください。文字の間にスペースを入れないでください。
トピック分析
トピックコード



質問8:キャンディーの分割

タイトル説明
輪になって座っている子供はn人います。先生は各子供にランダムに偶数のキャンディーを与え、次に次のゲームをしました:
各子供は彼の左側の子供に彼のキャンディーを半分に分けました。
砂糖を割った後、キャンディーの数が奇数の子供には、先生から偶数が与えられます。
すべての子供が同じ数のキャンディーを持つまで、このゲームを繰り返します。
あなたの仕事は、教師が既知の最初のキャンディーの下で再発行する必要があるキャンディーの数を予測することです。
[フォーマット要件]
プログラムは最初に、子の数を表す整数N(2 <N <100)を読み取ります。
次に、スペースで区切られたN個の偶数の行があり(各偶数は1000以下、2以上)、
プログラムは整数を出力する必要があり、教師が再発行する必要のあるキャンディーの数を示します。
例:入力
3
2 2 4と
プログラムは出力する必要があります:
4

リソース合意:
ピークメモリ消費量(仮想マシンを含む)<256MCPU
消費量<1000ms

トピック分析
トピックコード



質問9:地下宮殿から宝物を取り出す

タイトルの説明
キングXには地下宮殿の宝庫があります。nxmグリッドの行列です。各グリッドに赤ちゃんを置きます。各赤ちゃんには値ラベルが貼られています。地下宮殿への入り口は左上隅にあり、出口は右下隅にあります。シャオミンは地下宮殿の入り口に連れて行かれ、王は彼に右または下に歩くように頼んだ。特定のグリッドを歩いているときに、そのグリッドの宝物の価値がシャオミンの手にある宝物の価値よりも大きい場合、シャオミンはそれを拾うことができます(もちろん、それを取る必要はありません)。シャオミンが出口まで歩いたとき、彼の手にある宝物がたまたまk個だった場合、これらの宝物をシャオミンに渡すことができます。
Xiaomingが特定の状況でこれらのk個の宝物を入手するために必要なさまざまな行動計画の数を計算するのを手伝ってください。
[データ形式]
スペースで区切って3つの整数を1行に入力します。nmk(1 <= n、m <= 50、1 <= k <= 12)
次に、n行のデータがあり、各行にはm個の整数Ciがあります。 (0 <= Ci <= 12)は、このグリッド上の宝物の値を表します。
整数を出力する必要があります。これは、k個の宝物のアクションプランの数が取得されることを意味します。この数は非常に大きくなる可能性があり、1000000007を法とする結果を出力します。

たとえば、次のように入力します。22
2
1 2
2 1
プログラムは次のように出力する必要があります:
2

別の例として、次のように入力します。23
2
1 2 3
2 1 5
プログラムは次のように出力する必要があります:
14

リソースの合意:
ピークメモリ消費量(仮想マシンを含む)
<256MCPU消費量<2000ms
質問分析
質問コード



質問10:コインをマトリックスの上にひっくり返す

タイトルの説明
XiaoMingは、最初にコインをn行m列のマトリックスに入れました。続いて、シャオミンは各コインに対してQ操作を実行します。行X及び列Y内の硬貨でQ動作の定義:のすべてのコインフリップiはxおよびjは、Y。その中で、iとjは操作を実行可能にする任意の正の整数であり、行番号と列番号は両方とも1から始まります。Xiao Mingがすべてのコインに対してQ操作を実行したとき、彼は奇跡を発見しました-すべてのコインは頭を上げていました。Xiao Mingは、最初に何枚のコインが上向きになっていたかを知りたがっていました。それで彼は彼の親友のシャオMに助けを求めました。賢い小さなMはXiaomingに、初期状態に戻すためにすべてのコインに対してQ操作を再度実行するだけでよいと言います。しかし、シャオミンは怠惰で、それに続くことを望んでいません。だからシャオミンはあなたが彼にもっと良い方法を与えることを望んでいます。彼が答えを計算するのを手伝ってください。

【データ形式】
入力データは1行2つの正の整数nmであり、タイトルの説明にその意味が示されています。
最初に表向きになっているコインの数を示す正の整数を出力します。

【サンプル入力】
2 3

【サンプル出力】
1

[データ尺度]
データの10%を、N、^ 3 M <= 10;
データの20%を、N、^ 7メートル<= 10;
データの40%を、N、M <= 10 ^ 15;
のためデータの10%の場合、n、m <= 10 ^ 1000(10の1000乗)。

リソースの合意:
ピークメモリ消費量(仮想マシンを含む)
<256MCPU消費量<2000ms
質問分析
質問コード



おすすめ

転載: blog.csdn.net/kiwi_berrys/article/details/111492187