題解:
首先我們會發現題目限制等價於要同乙個組中的數不能再2進製下呈包含關係
然後可以建一張郵箱無圖,找最長鏈
我們考慮ai只有10^6
從大到小考慮,列舉刪掉每一位的連邊方法
複雜度20*10^6
這麼做的正確性是顯然的
因此從小到大插入每個數,貪心的放在前面這個正確性可以反證
**:
#include usingnamespace
std;
#define rint register int
#define il inline
#define rep(i,h,t) for (rint i=h;i<=t;i++)
#define dep(i,t,h) for (rint i=t;i>=h;i--)
char ss[1
<<24],*a=ss,*b=ss;
il char
gc()
template
void read(t &x)
char sr[1
<<24],z[20]; int z,c=-1
;template
void
wer(t x)
const
int n=2e6;
inta[n],dis[n];
bool
f[n];
int jl[22][n],cnt2[22
];int
main()
}dep(i,t,
0) if (!f[i]) dis[i]=0
;
int maxa=0
; rep(i,
0,t)
if (dis[i]>maxa) maxa=dis[i];
wer(
1); sr[++c]='\n'
; wer(maxa); sr[++c]='\n'
; rep(j,
0,t)
if (dis[j]) jl[dis[j]][++cnt2[dis[j]]]=j;
/*rep(i,1,maxa)
sr[++c]='\n';
}*/rep(i,
1,maxa)
fwrite(sr,
1,c+1
,stdout);
return0;
}
洛谷月賽總結
include using namespace std char s 1000005 long double l,r,t,wsl,wsr,dr,dl,fu bool pd,big,lx,rx inline long long read int main if pd if ful strlen s i...
洛谷2018 6月賽
對於初中生來說簡直就是閱讀理解場,感覺之前自學的高中物理全白學了。t1 物理 平拋運動 題意概述 怎麼概述,我自己還沒完全看懂呢.事實上是個名副其實的簽到題。首先發現了一些公式,然後發現關鍵就是 t 只要有了 t 別的就都可以隨便算啦。這時候就發現乙個很奇妙的事情,v 好像給了兩種表示方法?於是就可...
洛谷 9月月賽
題目描述 眾所周知,在一些特殊的部門,如果密碼能夠讓乙個人就解開,就會非常不安全。pic pre invoked code,預生成密碼 誕生了。這個密碼比較安全,是因為它必須由三個人保管。系統首先預先生成三個大整數a b c,計算出它們的與and 或or 和sum並儲存,然後將a b c分別告訴這三...