2022牛客寒假算法基础集训营6 签到题5题(附基础集训营4-6签到题总结)
1、I-A+B问题
- 模拟,类似于高精度,竖式运算
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
int main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int k; cin>>k;string a, b; cin>>a>>b;int len1 = a.size(), len2 = b.size();vector<int>x;int c = 0;for(int i = 0; i<len1||i<len2; i++){if(i<len1)c+=a[len1-i-1]-'0';if(i<len2)c+=b[len2-i-1]-'0';x.push_back(c%k);c /= k;}if(c)x.push_back(1);for(int i = x.size()-1; i >= 0; i--)cout<<x[i];return 0;
}
2、F +-串
- 一次操作让|x|加2或减2,先枚举一遍得到初始值,然后贪心的>0就-2,小于零就+2,最后的x绝对值就是结果
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
int main(){int T; cin>>T;while(T--){int x = 0, k;string s; cin>>s>>k;for(char ch : s){if(ch=='+')x++;else x--;}for(int i = 1; i <= k; i++){if(x>=0)x-=2;else x+=2;}cout<<abs(x)<<"\n";}return 0;
}
3、D-删除子序列
- 先求T的第一个字母在S的前i个字母中出现了多少次,再此基础上再求T的第二个字母在S的前i个字母中出现了多少次(始终要小于第一个字母的出现次数),最后到第m个字母就是答案。
- 注意到T的范围很小,只有30,所以直接暴力双循环就可以过,枚举S的每个字符,然后去T中find,开个数字记录一下T的第i个字母出现的次数。
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
int f[30];
int main(){int T; cin>>T;while(T--){int n, m; cin>>n>>m;string s, t; cin>>s>>t;memset(f,0,sizeof(f));for(int i = 0; i < n; i++){int x = t.find(s[i]);if(x>=0)f[x]++;if(x>0&&f[x]>f[x-1])f[x]=f[x-1];}cout<<f[m-1]<<"\n";}return 0;
}
4、E-骑士
- 所有骑士不被秒,即对于任意一名骑士j,有hj+bj+药剂数>ai(除自己之外最大的ai)
- 需要找到ai最大的那个骑士,他需要的药剂数取决于第二大的ai,其余所有骑士需要的都取决于ai,即为最大ai-(bj+hj)+1
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int maxn = 2e5+10;
struct node{LL a, b, h;}q[maxn];
bool cmp(node x, node y){return x.a>y.a;}
int main(){int T; cin>>T;while(T--){int n; cin>>n;for(int i = 1; i <= n; i++)cin>>q[i].a>>q[i].b>>q[i].h;sort(q+1,q+n+1,cmp);LL ans = q[2].a-q[1].b-q[1].h+1;if(ans < 0)ans = 0;for(int i = 2; i <= n; i++){LL tmp = q[1].a-q[i].b-q[i].h+1;if(tmp>0)ans += tmp;}cout<<ans<<"\n";}return 0;
}
5、B-价值序列
- 题意等价于,删掉几个数,让序列的价值保持不变,求可以删的方案数量。
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int maxn = 1e6+10, mod = 998244353;
int pows[maxn];
void init(){pows[0]=1;for(int i=1; i<=10000; i++)pows[i]=pows[i-1]*2%mod;}
LL a[maxn];
int main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);init();int T; cin>>T;while(T--){LL n; cin>>n;for(int i = 1; i <= n; i++)cin>>a[i];LL ans = 1;for(int i = 1; i <= n; i++){int j = i;while(j<n && a[j+1]==a[j])j++;if(i>1&&j<n && ((a[i-1]<a[i]&&a[i]<a[j+1])||(a[i]<a[i-1]&&a[i]>a[j+1]))){ans = ans*pows[j-i+1]%mod;}else{ans = ans*(pows[j-i+1]-1)%mod;}i = j;}cout<<ans<<"\n";}return 0;
}
附签到题总结
2022牛客寒假算法基础集训营4
题号 标题 已通过代码 通过率 我的状态
A R 点击查看 1569/3702 通过(贪心,遍历)
B 进制 点击查看 592/2271 未通过
C 蓝彗星 点击查看 1881/5874 通过(区间状态,差分前缀和)
D 雪色光晕 点击查看 1016/3846 未通过
E 真假签到题 点击查看 2852/5744 通过(签到,结论)
F 小红的记谱法 点击查看 1891/2231 通过(模拟,遍历)
G 子序列权值乘积 点击查看 790/2316 未通过
H 真真真真真签到题 点击查看 2840/3120 通过(签到,结论)
I 爆炸的符卡洋洋洒洒 点击查看 1501/3948 通过(01背包变种)
J 区间合数的最小公倍数 点击查看 1298/2198 未通过
K 小红的真真假假签到题题 点击查看 2263/5836 通过(签到,结论)
L 在这冷漠的世界里光光哭哭 点击查看 148/533 未通过2022牛客寒假算法基础集训营5
题号 标题 已通过代码 通过率 我的状态
A 疫苗小孩 点击查看 1125/5166 通过(贪心,二分,贡献)
B 乒乓小孩 点击查看 61/663 未通过
C 战棋小孩 点击查看 579/1991 未通过
D 数位小孩 点击查看 991/2773 通过(结论,暴力,搜索)
E 复苏小孩 点击查看 320/826 未通过
F 飞车小孩 点击查看 101/471 未通过
G 163小孩 点击查看 2050/8779 通过(签到,结论)
H 一六三小孩 点击查看 19/75 未通过
I 兔崽小孩 点击查看 1801/9676 通过(排序,贪心,二分,贡献)
J 三国小孩 点击查看 2576/3655 通过(签到,结论)
K 造梦小孩 点击查看 179/796 未通过2022牛客寒假算法基础集训营6
题号 标题 已通过代码 通过率 我的状态
A 回文大师 点击查看 256/905 未通过
B 价值序列 点击查看 880/3660 通过(贪心,结论,贡献)
C 数组划分 点击查看 82/349 未通过
D 删除子序列 点击查看 1478/5040 通过(递推,暴力)
E 骑士 点击查看 1865/4549 通过(贪心,排序)
F ±串 点击查看 2034/4194 通过(签到,贪心)
G 迷宫2 点击查看 361/1315 未通过
H 寒冬信使2 点击查看 470/1446 未通过
I A+B问题 点击查看 2195/5133 通过(签到,模拟,高精度)
J 牛妹的数学难题 点击查看 610/2125 未通过
2022牛客寒假算法基础集训营6 签到题5题(附基础集训营4-6签到题总结)相关推荐
- 2022牛客寒假算法基础集训营3 签到题7题(附基础集训营1-3签到题总结)
1.A-智乃的Hello XXXX 签到 #include<bits/stdc++.h> using namespace std; int main(){cout<<" ...
- 2022牛客寒假算法基础集训营
2022牛客寒假算法基础集训营1 C-Baby's first attempt on CPU D-牛牛做数论 已知欧拉函数 ϕ ( x ) \phi(x) ϕ(x)是满足 1 ≤ y ≤ x 1\le ...
- 2022牛客寒假算法基础集训营1 L E J H F C D A I (9/13)
2022牛客寒假算法基础集训营1 L E J H F C D A I (9/13) L 牛牛学走路 思路: 模拟,用一个 M A X MAX MAX存储. 参考代码: #include<bits ...
- 2022牛客寒假算法基础集训营1 ——H 牛牛看云
链接:登录-专业IT笔试面试备考平台_牛客网 来源:牛客网 就像罗夏墨迹测试一样,同一片形状的云在不同人的眼中会看起来像各种各样不同的东西. 例如,现在天上飘过了一片长条状的云彩,hina说这片云长得 ...
- 2022牛客寒假算法基础集训营4 签到题7题
1.E-真假签到题 不难发现,或者随便枚举一下,可以得到f(n)=n的结论 #include<bits/stdc++.h> typedef long long LL; using name ...
- 2022牛客寒假算法基础集训营2 签到题7题
1.C 小沙的杀球 如果你能够杀球但不杀球,虽然回复了体力,但你后续可能会没有机会继续杀球,并且杀球次数相同,那么回复的体力是相同的,所以在同等条件下,我们应该尽可能多的杀球. 不开long long ...
- 2022牛客寒假算法基础集训营1 签到题7题
1.L.牛牛学走路 恭喜你 签到成功 #include<bits/stdc++.h> using namespace std; int main(){int T; cin>>T ...
- [nk] 2022牛客寒假算法基础集训营1 补题|题解
目录 前言 L.牛牛学走路 MyCode OtherCode J.小朋友做游戏 MyCode A.九小时九个人九扇门 MyCode F. 中位数切分 MyCode 前言 根据难度系数补题,大概会补 A ...
- 2022牛客寒假算法基础集训营5 E.复苏小孩 详解
题目描述 获得鬼手后,九峰成功让鬼眼,无头鬼影,鬼手三者形成了奇妙的平衡,短时间内不用担心厉鬼复苏,且可以使用厉鬼的力量. 但想要让三者保持平衡,必须按照一定的规律轮流使用各部分的力量,于是九峰向神秘 ...
最新文章
- C++ 笔记(24)— STL map 类(map实例化、插入、查找、删除)
- Go 语言调用 python2
- 索尼笔记本bios如何设置VT-x/AMD-V兼容
- 数据结构和算法(01)--- 算法复杂度
- 菜鸟网络宣布推出物流加速上云行动“鲲鹏计划”
- StringBuffer和StringBuild
- Tomcat启动报Error listenerStart错误
- 【XCTF 攻防世界 web 练习详解系列(二)】【get_post的两种解法】
- Redmi王腾:Redmi 10X还会带来全新滤镜
- python执行过程
- 计算机网络安全重要性
- 基于CompactRIO的嵌入式车载电性能测试系统研发
- 自己动手开发多线程异步 MQL5 WEBREQUEST
- Android中手机号、车牌号正则表达式
- 猫、路由器、带宽、IP地址、子网掩码、网关以及公网与私网简介
- Excel 2016图表标题不能输入中文,图表一直闪动
- 画一手好的架构图是码农进阶的开始
- 不管你怎么赶,人生中总有抓不住的,享受当下吧
- 对于数据挖掘的几点认识[转]
- 听见丨特斯拉电动卡车售价公布:100万元起 朱啸虎:ofo和摩拜会合并 但还要再经历一战
热门文章
- Python typing —— 类型提示(type hint)
- numpy 代码优化(一)—— 常见手段
- 极简代码(六)—— 返回 0/1 构成的布尔向量
- 负数的移位、有符号数的移位转换为无符号数的移位
- 谷歌浏览器(chrome) —— 扩展应用程序
- Python 基础—— collections 模块
- redhat5.4 安装mysql_RedHat5.4搭建LAMP
- 自学python推荐书-学习python求推荐一波书籍?
- 如何系统的自学python-自学Python应该如何正确系统学习,避免少走弯路
- python教程视频-Python基础视频教程(600集)【传智播客精品教程】