白玉樓前
【題目背景】
「一覺醒來怎麼半靈又不見了?一定是幽幽子吃了。」
「幽幽子你給我吐出來!」
「我這邊有個遊戲玩不過去,你幫我玩過去我就吐出來。」
【題目描述】
妖夢現在要玩幽幽子的遊戲,她才能拿回自己的半靈。
遊戲規則是這樣的:
幽幽子有n
nn 個點,現在她讓妖夢對每個點隨機一條出邊(隨機到每個點的概率都相等),
然後得到一張圖。(注意:可以自環)
如果這張圖任意乙個點沿著邊走兩步(顯然這樣的走法唯一)都能到達自身,則幽幽子可以通關。
現在幽幽子想問妖夢,她通關的概率是多少?
兩個圖不同,當且僅當存在一條邊出現在圖a 中且不出現在圖b 中。圖中的點有編號,邊無編號。
答案m od
modmo
d998244353
998244353
998244
353【輸入格式】
第一行乙個數t
tt 表示資料組數:
下面t 行,每行中只有乙個數,表示nnn。
【輸出格式】
輸出t 行,每行乙個數表示答案。
【樣例輸入】11
【樣例輸出】
1【樣例解釋】
只有1
−>
11->1
1−>
1 這種情況,且符合題意。
【資料範圍】
t ≤5
×105
,n≤5
×105
t \leq 5\times 10^5,n\leq 5\times 10^5
t≤5×10
5,n≤
5×10
5題解:
(最近是出題人比較喜歡東方吧qaq,上次是兔子,這次就成幽幽子了。。)
問題就是轉化為求乙個排列的對偶排列個數。
先考慮方案數。
設f if_
fi表示合法的方案數。
對於乙個n−1
n-1n−
1個點的圖,考慮對於第n
nn 個點,可以有兩種情況,
乙個是它單獨形成了乙個自環,乙個是與前(i−
1)
(i-1)
(i−1
)個點中的乙個點手牽手形成乙個環,就剩下(i−
2)
(i-2)
(i−2
)個點的方案惹。。。
//orzlkw
#includeusing namespace std;
#define in inline
#define rep(i,a,b) for(int i=a;i<=b;i++)
#define repd(i,a,b) for(int i=a;i>=b;i--)
#define for(i,a,b) for(int i=a;iin void g(t&t)
typedef long long ll;
const ll mod=998244353;
const int n=5e5+233,l=5e5;
ll f[n];
in ll qp(ll x,ll y)return res%mod;
}in ll inv(ll x)
int main()
return 0;
}
關於401的錯誤
1 錯誤號401.1 症狀 http 錯誤 401.1 未經授權 訪問由於憑據無效被拒絕。分析 由於使用者匿名訪問使用的賬號 預設是iusr 機器名 被禁用,或者沒有許可權訪問計算機,將造成使用者無法訪問。解決方案 1 檢視iis管理器中站點安全設定的匿名帳戶是否被禁用,如果是,請嘗試用以下辦法啟用...
401的錯誤分析
在介面的測試中,經常會遇到客戶端向服務端傳送乙個請求,服務端返回401的錯誤,那麼今天本文章就來說明在介面測試中如何分析以及解決該問題。我們知道在http返回的狀態碼中,401錯誤表示的是被請求的頁面需要使用者名稱和密碼。401的錯誤詳細的可以描述為 客戶端傳送請求抖到服務端,頁面需要驗證服務端會返...
DTOJ5057 英雄聯盟
小 l 和小 c 在玩 wild rift。眾所周知,wild rift 中的暴擊是非常不靠譜的。他會在一開始設定乙個引數 x 如果第一刀不暴,則第二刀的暴率增加到初始值的 2 倍 如果還是不暴,就繼續增加到初始值的 3 倍,以此類推,當疊加到 100 以上的時候,預設下一發一定暴擊。當一次觸發了暴...