Entries

スポンサーサイト (この記事を編集する[管理者用])

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://rsujskf.blog32.fc2.com/tb.php/1507-cb2f001b
この記事にトラックバックする(FC2ブログユーザー)

UVa 11828 - Palindrome Again (この記事を編集する[管理者用])

Source

One more National Programming Contest 2010 (2010-09-04)
UVa 11828

問題概要

この問題では文字はアルファベット小文字のみを考える.
長さNの文字列が与えられるので,その文字列を同じ長さで,同じ場所で違う文字の数がK個以下の回文の数をmod 1000000000で求める問題.
テストケースの数Tは5000以下.Nは1000以下.

解法

2文字の組で見てあげて,同じ文字の組がa個,違う文字の組がb個あるとしたら,0~aまでのループと0~bまでの2重ループで組み合わせの数を計算すれば解けるがO(TNK)で多分TLE.
0~bまでのループは,残りの変えて良い文字の数を状態に加えてDPして,全テストケースで使いまわすと,テストケースの数がTとして全ケース合計でO(TN+KN)で解ける.

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://rsujskf.blog32.fc2.com/tb.php/1507-cb2f001b
この記事にトラックバックする(FC2ブログユーザー)

Appendix

Recent Articles

ブログ内検索

Ads


(プライバシーポリシー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。