日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Codeforces Round #108 (Div. 2)

發(fā)布時間:2024/4/14 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Codeforces Round #108 (Div. 2) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Codeforces Round #108 (Div. 2)

C. Pocket Book

題意

  • 給定\(N(N \le 100)\)個字符串,每個字符串長為\(M(M \le 100)\)。
  • 每次選擇\(i, j, k\),然后交換串\(i\)和串\(j\)的長度為\(k\)的前綴。
  • 操作可以做任意次,求最多能得到多少不同的字符串,\(modulo (10^9+7)\)。

思路

  • 相當于每個位置的可選字符為該列的不同字符的數(shù)量。

代碼

  • C. Pocket Book

D. Frames

題意

  • 給定一個\(n \times m(3 \le n,m \le 1000)\)的矩陣,由'.'和'#'構(gòu)成。
  • 兩個矩形框放入該矩陣,'#'表示格子被矩形框覆蓋,且邊長均不小于3。
  • 兩個矩形框的關(guān)系是任意的,重邊、重疊,甚至完全重疊也是可以的。
  • 判斷原矩陣是否能由兩個矩形框表示,若可以輸出"YES"以及兩個矩形框的左上角坐標和右下角坐標,否則輸出"NO"。

思路

  • 找出橫向長度大于2的行號,顯然只有最小值,次小值,最大值,次大值有可能成為矩形框的橫坐標。
  • 暴力枚舉判定即可。

代碼

  • D. Frames

E. Garden

題意

  • 一個\(n \times m(1 \le n,m \le 100,n \cdot m \le 200)\)的網(wǎng)格,有\(k(k \le 7)\)的格子必須要覆蓋,且任意兩個格子之間要存在一條路徑(相鄰格子有一條公共邊)。
  • 覆蓋格子\((i,j)\)的代價為\(a(i,j)\)。
  • 求最小代價,并輸出一種方案,'X'表示覆蓋,'.'表示未覆蓋。

思路

  • \(f[u][mask]\)表示格子覆蓋狀態(tài)\(mask\)且集中到\(u\)的最小代價。
  • 轉(zhuǎn)移:\[f[u][mask]=min{f[u][submask] + f[u][mask \oplus submask] - v[u]}\]
    \(v[u]\)表示點\(u\)的覆蓋代價,即\(a[i = u / m][j = u \% m]\)
    當狀態(tài)\(mask\)集中到\(u\)之后,可以走到或者說擴展到其他點\(v\),這個bfs一下即可。

代碼

  • E. Garden

轉(zhuǎn)載于:https://www.cnblogs.com/mcginn/p/5901490.html

總結(jié)

以上是生活随笔為你收集整理的Codeforces Round #108 (Div. 2)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。