【多重背包】Atcoder Beginner Contest 286---D 题目:D - Money in Hand (atcoder.jp) 分析:经典的多重背包。用dp[i]表示i能否正好凑出。先复习一下多重背包。 多重背包就是有N组物品,每组最多有k个,每组可以选多个。分组背包和多重背包类似,分组背包也是有N组,每组有K个,但分组背包中每组最多只能选...
AtCoder Beginner Contest 286 A - Range Swap (abc286 a)题目大意给定长度为nn的数组 aa和p,q,r,sp,q,r,s,交换 a[p..q]a[p..q]和a[r..s]a[r..s]并输出交换后的数组 aa。解题思路模拟即可。神奇的代码 #include <bits/stdc++.h> using namespace std; using LL = long long; int main...
代码: #include<bits/stdc++.h>#define int long longusingnamespacestd;constintINF=1e9+7;signedmain(){intn;cin>>n;vector<int>a(n+1);for(inti=0;i<n;i++){cin>>a[i];}vector<string>str(n+1);vector<vector<int>>dist(n+1,vector<int>(n+1,INF)),val(n+1,vector<int>(n+1,0)...
如果字符串出现2个0,就用00那个键,否则就直接打相应的那个键 #include<bits/stdc++.h>usingnamespacestd;strings;intans=0;intmain(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);cin>>s;for(inti=0;i<s.size();i++){if(s[i]==s[i+1]&&s[i]=='0')ans++,i++;elseans++;}cout...
收录于文集 CF,牛客,ATcoder练习集 · 36篇一个长度为n的字符串,操作A可以把字符串第一个字母移动到最后一个,其他位置保持不变,操作B可以把一个字符变成其他任意字符。操作A,操作B的费用分别为A,B请问把这个字符串变成回文需要花费多少。 我们发现操作1和操作2的顺序是不影响结果的,我们可以暴力枚举一下即可,...
收录于文集 CF,牛客,ATcoder练习集 · 36篇一个长度为n的字符串,操作A可以把字符串第一个字母移动到最后一个,其他位置保持不变,操作B可以把一个字符变成其他任意字符。操作A,操作B的费用分别为A,B请问把这个字符串变成回文需要花费多少。 我们发现操作1和操作2的顺序是不影响结果的,我们可以暴力枚举一下即可,...
AtCoder Beginner Contest 169(题解)E - Count Median结论题给定nnn个xi∈[ai,bi]x_i\in[a_i,b_i]xi∈[ai,bi],求中位数的个数。定义:k=⌊n2⌋k=\lfloor\dfrac{n}{2}\rfloork=⌊2n⌋,对a,ba,ba,b进行排序后,为ak+1a_{k+1}ak+1为aia_iai的中位数,bk+1...
A - Sequence of Strings Original Link 题目大意: 输入N个字符串,倒序输出。 思想: 签到题。 代码: 代码语言:javascript 代码运行次数:0 复制 Cloud Studio代码运行 #include<iostream>#include<cstring>#include<cstdio>#include<algorithm>#include<cmath>#include<sstream>#include<vector>#include<queue>#includ...
AtCoder Beginner Contest 188 题解 AtCoder Beginner Contest 188 A,B很简单就不多说 C - ABC Tournament 找出前一半的最大值和后一半的最大值,二者中较小的那一个对应的序号就是最后的答案。 时间复杂度:\(\mathcal{O}(2^N)\) using ll = long long;...
AtCoder (ABC 396)于上周六20:00进行。 周日(3月9日)晚上19:00我们在B站进行了AtCoder Beginner Contest 396的题解直播讲解。 本期主讲老师:清华大学 殷老师(NOI2019银牌) 欢迎加入ABC交流QQ群咨询、沟通、交流(群密码:AtCoder) ABC396比赛真题讲解