題目鏈結
思路:
補充:1.由於資料範圍達到1e7,只能通過lucas定理計算組合數。
23.gu[u][i] :受到含第i次攻擊在內,一共收到奇/偶次攻擊的情況數,再根據容斥原理,奇加偶減。
(這種題真是太難debug了,基本上就是照著ac**一步一步調)
#includeusing namespace std;
typedef long long ll ;
const int mod=998244353;
const int maxn=1e7+5;
ll inv[maxn],fac[maxn],fac_p[maxn];
ll num[2][maxn],sum[maxn],f[maxn];
int l,d,m;
struct node
int main()
nodes[0].p=nodes[0].t=0;
for(int i =1;i<=m;i++)
sort(nodes+1,nodes+m+1);
ll ans=f[l];
num[0][0]=1;
for(int i=1;i<=m;i++)
}ans=(ans+(num[0][i]-num[1][i]+mod)%mod*f[l-nodes[i].p]%mod)%mod;
}printf("%lld\n",ans);
}
2019牛客多校第八場
求所有極大全一矩陣的個數。created by keane on 2019 8 10.include using namespace std typedef long long ll const int n 3050 int a n n int n,m char s n 每個1向下延伸 int dw...
2019 牛客 多校賽 第八場
乙個區間的貢獻為這個區間的不同數字的個數,求所有子區間的貢獻和 反向思考,計算乙個數字在子區間 現的次數,當區間的左端點在這個數字上一次出現位置和當前位置之間,並且右端點在當前位置之後,這個數字都產生了貢獻,所以當前位置的數字的貢獻就是左端點數量 右端點數量,然後遍歷一遍。include defin...
2019牛客多校第八場題解 A
a 給你乙個n m的01矩陣,求出所有最大全1矩陣的數量,保證任意兩個矩陣不相互包含。考慮單調棧求最大矩形面積的做法。對於矩陣 0 0 0 0 0 0 1 0 0 1 1 0 1 1 1 1 0 0 0 0 我們先預處理h i j 為以該行為底的最大高度。那麼我們只要知道這個矩形最左邊的能夠到達的位...