暴力題。
#include#includeusing namespace std;
const int maxk=27;
int ans1,ans2;
int cnt[maxk],ok[4][4];
string s[4],t[4];
int main()
for(int i=1;i<=3;i++)
for(int j=0;j<3;j++)
if(ok[i][j]==0&&cnt[t[i][j]-64])
cnt[t[i][j]-64]--,ans2++;
printf("%d\n%d\n",ans1,ans2);
return 0;
}
暴力題。
#include#includeusing namespace std;
int t;
int a[3][5];
int calc(int x,int y)
int main()
for(int i=1;i<=10;i++)
for(int j=i;j<=10;j++)
for(int k=j;k<=10;k++)
for(int l=k;l<=10;l++)
puts(ans==1? "yes":"no");
} return 0;
}
好難。
相鄰減一相當於把 \(x\) 位置的差分陣列加一,\(x-2\) 位置的差分陣列減一,還有兩種特殊情況,乙個是位置 \(3\) 加一,乙個是位置 \(n-2\) 減一。
從後往前模擬即可,時間複雜度 \(o(n)\)。
#include#includeconst int maxn=100005;
int t,n;
int a[maxn];
long long b[maxn];
inline int min(int a,int b)
for(int i=1;i<=n;i++)
ans+=a[i]-b[1];
if(b[1]<0||b[0]<0||***)
puts("-1");
else printf("%lld\n",ans);
b[0]=0;
} return 0;
}
感覺是全場最困難的題目。
考慮最優的行動是分四段:
先加若干次,然後若干個除(若當前數末尾是一,則先進行一次加),再加若干次,然後再是若干個乘(若目標數末尾是一,則之後進行一次加)。
直接列舉每次操作次數即可,複雜度 \(o(\log n)\)。
#includeint t,ans;
long long a,b;
int main()
now+=k,res+=k;
int tot=0;
long long tmp=now;
while((tmp<<1)<=b)
tmp<<=1,tot++;
if((b>>tot)!=now)
continue;
for(int p=1;p<=tot;p++)
if(res簽到題。
考慮滿足 \(\forall_
else suml[x]=x,totl[x]=1;
if(rc[x])
else sumr[x]=x,totr[x]=1;
}int main()
void dfs(int x,int last)\) 表示選到第 \(i\) 個位置,其中 \((i,i+1)\) 選了 \(j\) 次的合法序列數,那麼可以得到:
\[f_=\sum_^-st-k\}} f_
\]字首和優化即可做到 \(o(nv)\)。
當 \(n\) 為偶數的時候,\(st\) 可以直接是 \(0\),否則 \(st\) 可以設為 \(0,1,\cdots,\min h_i\) 的任意數。
總時間複雜度 \(o(nv^2)\)。
#include#include#includeusing namespace std;
const int maxn=105,maxv=1005,mod=1000000007;
int n,ans,up,mn=100000;
int h[maxn],f[maxn][maxv],g[maxn][maxv];
int main()
void dfs(int x,int v)
int find(int x)
void merge(int a,int b,int t)
void cancel(int rec)
void insert(int l,int r,int now,int l,int r,int v)
if(l<=mid)
insert(l,mid,lc(now),l,r,v);
if(mid賽場不會。
KMP做題記錄
題目太長不貼了 這道題很巧妙,給定乙個字串s,求最少在首尾新增幾個字元後,s變為乙個迴圈了n次的字串 n 1 假設我們有乙個迴圈串s abcabcabc 我們根據kmp求一次next陣列,就可以通過next strlen s 得到乙個迴圈節的位置從而求出迴圈節的長度,顯然,迴圈節能被s整除。如果s ...
8 25 9 25 做題記錄
2018.8.25 上午 1.ac 洛谷p1514引水入城 搜尋 貪心 2.ac 洛谷p3918 國家集訓隊 特技飛行 貪心 下午 3.ac 洛谷p1120 小木棍 資料加強版 搜尋 剪枝 4.ac 洛谷p1441 砝碼稱重 dfs列舉 01揹包 2018.8.26 上午 參加模擬賽 下午 1.ac...
8 25 9 25 做題記錄
2018.8.25 上午 1.ac 洛谷p1514引水入城 搜尋 貪心 2.ac 洛谷p3918 國家集訓隊 特技飛行 貪心 下午 3.ac 洛谷p1120 小木棍 資料加強版 搜尋 剪枝 4.ac 洛谷p1441 砝碼稱重 dfs列舉 01揹包 2018.8.26 上午 參加模擬賽 下午 1.ac...