cf1199解題報告

2022-02-28 16:19:31 字數 1699 閱讀 1218

目錄發一波水題。

模擬

#include #define ll long long

using namespace std;

const int _=1e6+7;

int n,x,y,a[_];

int main()

return 0;

}

小學幾何題。輸出lf格式不對錯了幾發、、、

#include #define ll long long

using namespace std;

const int _=1e6+7;

double h,l,x;

int main()

最多能保留幾個不同的數,然後刪就行了。

我以為是\(map\)的\(log\)太大了t了。

其實是暴利統計最多保留幾個沒加範圍。

#include using namespace std;

const int _=4e5+7;

int n,m,k,a[_],ans=0x3f3f3f3f;

int hash[_],lsh[_];

vector> tmp;

int sum[_];

int read()

int main()

int mid=(l+r)>>1;

build(l,mid,ls);

build(mid+1,r,rs);

ma[rt]=max(ma[ls],ma[rs]);

} int modify(int l,int r,int l,int r,int rt)

}int n,a[_],las[_],q,dsr[_];

int main()

seg::build(1,q,1);

for(int i=1,val;i<=n;++i)

return 0;

}

\(matching\)和\(indset\)至少存在乙個。

每次遇到符合\(matching\)的邊就加上。

做完後,剩下的點就是\(indset\)的。

反證:沒在\(matching\)的兩個點,而且有邊相連,顯然矛盾。

因為是\(3n\)個點,所以做完後一定有乙個滿足條件。

#include using namespace std;

const int _=5e5+7;

int t,n,m,vis[_];

std::vectordsr;

int main()

} if((int)dsr.size()>=n)

int dfs(int x,int y,int x,int y)

f[x][y][x][y]=max(x-x+1,y-y+1);

for(int i=x;if[x][y][x][y]=min(f[x][y][x][y],dfs(x,y,i,y)+dfs(i+1,y,x,y));

for(int i=y;if[x][y][x][y]=min(f[x][y][x][y],dfs(x,y,x,i)+dfs(x,i+1,x,y));

return f[x][y][x][y];

}int main()

} printf("%d\n",dfs(1,1,n,n));

return 0;

}

CF328解題報告

a題 iq test 很水的題,就是給出數列的前四項,判斷出是等比還是等差。求下一項。code include using namespace std int main else cout 42 endl return 0 b題 sheldon and ice pieces 題意 有一排卡片,每張卡...

0712CF解題報告

a.free cash 題目大意,輸入第一行輸入n,然後輸入n行,每行輸入兩個數h 和 m 要求把出現次數最多的h和m的次數輸出。思路 此題運用雜湊法,先令乙個數tmp h 100 m 然後建立乙個陣列vis 2505 因為h 24 m 60 所以tmp 2505 最後用vis tmp 來統計次數,...

CF 1087解題報告

做出 t1 rating 97 想起幾個月前做不出t1還是有點小搞笑呀2333 雙指標 特判 發現k特別小,列舉剩餘系 還要判斷是否是能被n整除 移項發現可以算出整除是多少 然後 整除 k 剩餘數 n 算出答案,複雜度 o k 大力貪心 先算出a b之間的路徑,由於路徑不唯一 每次抉擇最多有兩種,變...