#include<bits/stdc++.h>usingnamespacestd;intmain(){cin.tie(nullptr)->sync_with_stdio(false);intsum,n;cin>>sum>>n;n--;intres=0;vector<int>row(n+1),col(n+1);function<void(int,int)>dfs=[&](intpos,ints)->void{intx=(pos+n-1)/n,y=(pos%n?pos%n:n);intmx=min(sum-row[...
假设x有num[x]个子树大小为奇数的子节点y,再对num[x]分奇偶讨论。 若num[x]为奇数,只能选num[x]2+1个0,num[x]2个1,并且x必须是1;或者选num[x]2个0,num[x]2+1个1,并且x必须是0。 若num[x]为偶数,可以选num[x]2个0,num[x]2个1,x可以任意取;或者num[x]2−1个0,num[x]2+1个1,...
dfs+回溯,不加回溯只有26分 Tip: 直接拿纸条往上怼 #include <bits/stdc++.h> using namespace std; const int maxn = 100000 + 5; struct mmp { int i; int at; vector<int> v; } member[105]; int number[maxn]; int n, p; bool flag = false; bool cmp1(mmp a, mmp b) { return ...
太难写了,当模拟写的,代码分成了很多块,长度比较难看。。。 #include<bits/stdc++.h>usingnamespacestd;#definell long long#definefastio ios::sync_with_stdio(false),cin.tie(NULL),cout.tie(NULL)constintinf =1e9+7;constll lnf =1e18+7;constintmaxn =1e6+10; ll mod =1e9+7;intn, m, l...
GPLT2022天梯赛L3-2 #include<bits/stdc++.h> usingnamespacestd; vector<int>v[300010]; #define int long long intres=0; constintmod=1e9+7; vector<int>tmp; intqmi(inta,intb) { intres=1; while(b) { if(b&1)res=res*a%mod;
2022天梯赛L3-2 前情提要 一个$[1,2,3,4,5,...,n]$的全排列逆序对和顺序对数目相同 例如:$[1,2,3]$ 他的全排列方案有: [1,2,3] 逆序对 0 顺序对 3 [1,3,2] 逆序对 1 顺序对 2 [2,1,3] 逆序对 2 顺序对 1 [2,3,1] 逆序对 2 顺序对 1 ...
L1-7 天梯赛的善良 一个map解决(这场的出题人真的特别喜欢map,后面还有) #include<bits/stdc++.h>usingnamespacestd;constintN=1e6+5;intmain(){intn;cin>>n;map<int,int>cnt;intmini=N,maxi=0;for(inti=0;i<n;i++){inta;cin>>a;cnt[a]++;mini=min(mini,a);maxi=max(maxi,a);}cout<<...
2022天梯赛L3-2 前情提要 一个[1,2,3,4,5,...,n][1,2,3,4,5,...,n]的全排列逆序对和顺序对数目相同 例如:[1,2,3][1,2,3] 他的全排列方案有: [1,2,3] 逆序对0顺序对3 [1,3,2] 逆序对1顺序对2 [2,1,3] 逆序对2顺序对1...