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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

AtCoder Beginner Contest 327 (ABC327)

發布時間:2023/11/16 windows 44 coder
生活随笔 收集整理的這篇文章主要介紹了 AtCoder Beginner Contest 327 (ABC327) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

A. ab

直接根據題意模擬即可。
Code

B. A^A

直接枚舉 \(i= 1, 2,\dots, 15\),每次看看 \(i ^ i\) 是否等于 \(A\) 即可。
Code

C. Number Place

Description

給你一個 \(9 \times 9\) 的矩陣 \(A\),判斷是否合法,滿足以下三個條件,即為合法。

  • 對于每一行,包含數字 \(1 \sim 9\)
  • 對于每一列,包含數字 \(1 \sim 9\)
  • 將矩陣 \(A\) 從上到下分成三組,每組三行三列。這樣會分成 \(9\)\(3 \times 3\) 的矩陣,每個矩陣也必須包含 \(1 \sim 9\) 的每個數字。

Solution

直接根據題意模擬即可。

每一行每一列不能出現同樣的數字,很好判斷。用 \(cntx\) 數組記錄每一樣每一個數字出現的次數;用 \(cnty\) 數組記錄每一列每個數字出現的次數。

最后判斷 \(cntx_i\)\(cnty_i\) 是否都 \(= 1\) 即可。

再處理第三種情況,將矩陣分成 \(9\)\(3 \times 3\) 的矩陣。這種情況我們可以分別枚舉行的起點和列的起點,每次再從起點循環,就能取出每個小矩陣。

然后再用 \(cnt\) 數組記錄出每個數字出現的次數,最后判斷。

Code

D. Good Tuple Problem

Description

給你兩個長度為 \(M\) 的序列 \(A\)\(B\),滿足以下條件時成為他們是“好的序列”。

  • 存在一個長度為 \(N\) 的序列 \(X\),只由 \(0\)\(1\) 組成,滿足以下條件:
    • 對于每個 \(i = 1,2,\dots M\)\(X_{A_i} \neq X_{B_i}\)

現在,請你判斷序列 \((A,B)\) 是否是“好的序列”。

Solution

這道題非常經典,是一個二分圖板子。

使用 DFS 判斷是否是二分圖。

維護數組 \(f\) 來記錄當前的狀態:

  • \(f_v = -1\) 表示當前結點 \(v\) 還未被訪問。
  • \(f_v = 0/1\) 表示該頂點上寫的是 \(0/1\)

對于每個 \(v = 1,2, \dots ,M\),執行以下操作:

  • 如果 \(f_v \neq -1\),表示已經訪問了節點 \(v\),直接 continue
  • 如果 \(f_v = -1\),說明當前的聯通塊還沒有被訪問過。執行 DFS,從這個節點開始 DFS,執行二分圖黑白染色。

最后判斷這張圖是否是二分圖,輸出答案即可。

Code

其他的不會。

總結

以上是生活随笔為你收集整理的AtCoder Beginner Contest 327 (ABC327)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。