AtCoder Beginner Contest 043题解(ABCD)

传送门

A - Children and Candies (ABC Edit)

题意:求∑i=1ni\sum\limits_{i=1}^n ii=1∑n​i

思路:签到题,直接按照公式输出n(n+1)2\dfrac{n(n+1)}{2}2n(n+1)​。

时间复杂度:O(1)O(1)O(1)

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+5,M=1e6+5,inf=0x3f3f3f3f,mod=1e9+7;
#define mst(a) memset(a,0,sizeof a)
#define lx x<<1
#define rx x<<1|1
#define reg register
#define PII pair<int,int>
#define fi first
#define se second
int main(){int n;   cin>>n;cout<<n*(n+1)/2;return 0;
}

B - Unhappy Hacking (ABC Edit)

思路:按照题意模拟,用一个字符串数组维护即可。

时间复杂度:O(n)O(n)O(n)

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+5,M=1e6+5,inf=0x3f3f3f3f,mod=1e9+7;
#define mst(a) memset(a,0,sizeof a)
#define lx x<<1
#define rx x<<1|1
#define reg register
#define PII pair<int,int>
#define fi first
#define se second
char ans[N];
int main(){string s;cin>>s;int n=s.size();int x=0;for(int i=0;i<n;i++){if(s[i]=='0') ans[++x]='0';else if(s[i]=='1') ans[++x]='1';else if(s[i]=='B'&&x){x--;}}for(int i=1;i<=x;i++) cout<<ans[i];cout<<ans;return 0;
}

C - Be Together

思路:因为数据只有100100100,范围很小,直接暴力枚举即可。

时间复杂度:O(100n)O(100n)O(100n)

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=105+5,M=1e6+5,inf=0x3f3f3f3f,mod=1e9+7;
#define mst(a) memset(a,0,sizeof a)
#define lx x<<1
#define rx x<<1|1
#define reg register
#define PII pair<int,int>
#define fi first
#define se second
int a[N];
int main(){int n;cin>>n;for(int i=1;i<=n;i++) scanf("%d",&a[i]);int ans=1e9;for(int i=-100;i<=100;i++){int sum=0;for(int j=1;j<=n;j++){sum+=(i-a[j])*(i-a[j]);}ans=min(ans,sum);} cout<<ans;return 0;
}

D - Unbalanced

思路:居然是个思维题。。其实我们只需要直到XX,XYXXX,XYXXX,XYX类型的字符串即可。

证明:假设不存在XX,XYXXX,XYXXX,XYX即两个相同字母间最少间隔两个字符。

所以字符串应该是这样的形式:AXYAXYAXYAAXYAXYAXYAAXYAXYAXYA

因为前四个字母不是满足条件的,所以每次加一个AAA,都至少要加个两个其他的字母XYXYXY,所以永远也不可能满足条件的。

若存在XX,XYXXX,XYXXX,XYX这样的字符串即这样的字符串就是答案。

所以存在XX,XYXXX,XYXXX,XYX是满足答案的充要条件。

所以顺序遍历判断即可。

时间复杂度:O(n)O(n)O(n)

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+5,M=1e6+5,inf=0x3f3f3f3f,mod=1e9+7;
#define mst(a) memset(a,0,sizeof a)
#define lx x<<1
#define rx x<<1|1
#define reg register
#define PII pair<int,int>
#define fi first
#define se second
char a[N];
int main(){scanf("%s",a);int l=strlen(a);for(int i=0;i<l-1;i++){if(a[i]==a[i+1]){printf("%d %d\n",i+1,i+2);return 0;}if(a[i]==a[i+2]){printf("%d %d\n",i+1,i+3);return 0;}}puts("-1 -1");return 0;
}

AtCoder Beginner Contest 043题解(ABCD)相关推荐

  1. AtCoder Beginner Contest 197 题解(A ~ F)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Rotate B - Visibility C - ORXOR D - Opposite ...

  2. Caddi Programming Contest 2021(AtCoder Beginner Contest 193) 题解

    Caddi Programming Contest 2021(AtCoder Beginner Contest 193) A - Discount 打折浮点数除即可 B - Play Snuke 枚举 ...

  3. Panasonic Programming Contest (AtCoder Beginner Contest 195) 题解

    文章目录 A - Health M Death B - Many Oranges C - Comma D - Shipping Center E - Lucky 7 Battle F - Coprim ...

  4. AtCoder Beginner Contest 096 题解

    比赛地址 https://abc096.contest.atcoder.jp A - Day of Takahashi 题目大意 我们把月和日相同的日期叫做"Takahashi日" ...

  5. freee Programming Contest 2022(AtCoder Beginner Contest 264) 题解 (A~D)

    A - "atcoder".substr() Time Limit: 2 sec / Memory Limit: 1024 MB Score : 100100100 points ...

  6. [2021-09-04 AtCoder Beginner Contest 217] 题解

    文章目录 A - Lexicographic Order B - AtCoder Quiz C - Inverse of Permutation D - Cutting Woods E - Sorti ...

  7. AtCoder Beginner Contest 168题解

    这里写目录标题 A - ∴ (Therefore) 代码 B - ... (Triple Dots) 代码 C - : (Colon) 代码 D - .. (Double Dots) 题意 题解 代码 ...

  8. AtCoder Beginner Contest 153 题解

    题解链接:题解链接 RD是输入,OT是输出 A – SERVAL VS MONSTER 链接: A题 题意: 给你怪物血量H和攻击一次扣A血,问至少要攻击几次能使怪物的血量小于或者等于0 解法: 按题 ...

  9. AtCoder Beginner Contest 177 题解

    希望更好的阅读体验?点这里 一.题解 A.Don't be late 题目大意: 高桥君计划在 TTT 分钟内于离家 DDD 米的地方与青木君碰面,已知高桥君速度为 SSS,问他能否在 TTT 分钟内 ...

  10. AtCoder Beginner Contest 055题解

    A.当a=1就把a改成14,b=1就把b改成14,然后比较a,b大小即可. #include <iostream> #include <algorithm> #include ...

最新文章

  1. 案例 | 河小象:智办事高效驱动组织升级
  2. Mybatis 缓存系统源码解析
  3. html 搜索 高亮效果,html5输入框高亮效果
  4. (10)MySQL触发器(同时操作两张表)
  5. Multiple CPUs,Multiple Cores、Hyper-Threading
  6. 【图像处理】【去模糊】图像去模糊的原理
  7. 【每月总结】2021年6月
  8. 电脑磁盘(特别是C盘)又满了,不知道删除什么?试试这款磁盘分析工具
  9. 安装oculus运行时出现问题_安装软件时出现解析包出现问题是什么原因
  10. 4G模块加网流程_4G拨号上网相关知识
  11. Idea 去掉 mapper.xml 文件的黄色、淡绿色警告
  12. 互联网创业公司失败的7大特征
  13. [Linux] 解决 CentOS 重启电脑后 ibus 拼音输入法无效的问题
  14. 一点一滴岗位测试答案_【一点资讯】部编版语文六年级下第三单元综合测试卷(含答案)...
  15. AUTO CAD 偏移命令的使用方法
  16. N2N(docker方式安装)实现远程访问家里群晖
  17. wps怎么把字缩到最小_wps怎么把最左侧的字体变小
  18. 如何合理规划每日时间
  19. 8. R语言画:散点图、直方图、条形图、箱线图、小提琴图、韦恩图
  20. PostgreSQL 儒略历学习资料

热门文章

  1. 记录双十一微信群抢楼的脚本
  2. PyQt5教程-05-消息盒子
  3. 三星S5P6818移植工程
  4. Bootstrap中tooltip插件使用 | 爱骇客
  5. springboot呼伦贝尔旅游网站的设计与实现毕业设计源码091833
  6. ubuntu使用cmake编译coffe
  7. android os 小米系统,小米全新OS系统MIUI 12发布:挑战iOS、22款机型首发升级
  8. arm开发板和pc电脑ping不通的问题记录
  9. 【超级有用】大数据的压缩格式
  10. 如何去痘痘最快方法简单