Shanghai 2004 Preliminary

1402 ワード

しばらくブログを更新していません.の簡単な問題の問題解を簡単に記録しましょう.
POJ2078~POJ2085
http://poj.org/searchproblem?field=source&key=Shanghai+2004+Preliminary
POJ2078
1つのマトリクスで、各行を自由に回転させ、各列の重み値と最大値の最小値を求めることができます.
直接7^7で検索して、最適性の枝を加えて、さもなくばTLEができます.
POJ2079
平面内にn個の点があり、そのうち3個の点を選択して三角形を構成し、その最大面積を求める.
座標範囲が大きくないということは,パケット上の点数も多くないことを意味し,ほぼsqrt(M)レベルである.
凸包を求めた後に1つの三角形の端点を列挙して、第2の点を列挙して、それから第3の座標の凸包の上の選択はフォーク積の値にとって明らかな単峰性があって、TwoPointersができます.
POJ2080
2000-01-01のn日の后でいつと何曜日ですかを求めます
シミュレーション
POJ2081
ひとつの繰返し数列の第n項を求めます
直接シミュレーションすれば、現れた数字をhashで保存できます.
1 e 8の配列をつけてそのまま保存しても大丈夫みたい・・・
POJ2082
幅がwiで高さがhiのレンガが互いに地面に横たわっていて、これらのレンガが覆う最大の矩形面積を求めています......
クラシックテーマは、単調スタックメンテナンス「右側の1番目のhiより小さい位置」があり、左のように処理されます.
POJ2083
再帰シミュレーションでXを描く
G++会TLE..C++を渡すのは速いです
POJ2084
Catalan数
POJ2085
逆順の対数がmで辞書の順序の最小の1つのnの配列を求めます
時計を打つと法則がわかります.
 0 : 1 2 3 4 5 6 7
 1 : 1 2 3 4 5 7 6
 2 : 1 2 3 4 6 7 5
 3 : 1 2 3 4 7 6 5
 4 : 1 2 3 5 7 6 4
 5 : 1 2 3 6 7 5 4
 6 : 1 2 3 7 6 5 4
 7 : 1 2 4 7 6 5 3
 8 : 1 2 5 7 6 4 3
 9 : 1 2 6 7 5 4 3
10 : 1 2 7 6 5 4 3
11 : 1 3 7 6 5 4 2
12 : 1 4 7 6 5 3 2
13 : 1 5 7 6 4 3 2
14 : 1 6 7 5 4 3 2
15 : 1 7 6 5 4 3 2
16 : 2 7 6 5 4 3 1
17 : 3 7 6 5 4 2 1
18 : 4 7 6 5 3 2 1
19 : 5 7 6 4 3 2 1
20 : 6 7 5 4 3 2 1
21 : 7 6 5 4 3 2 1
   n   ,  n        ,                 。