A

判断两数是否相邻,或两数分别为1,10。

#include<bits/stdc++.h>
using namespace std;
int main(){int a,b;cin>>a>>b;if(abs(a-b)==1||abs(a-b)==9)cout<<"Yes";else cout<<"No";
}

B

查重,数不同数字的个数,使用set高效去重。

#include<bits/stdc++.h>
using namespace std;
set<int>s;int n;
int main() {cin >> n;for (int i = 1, x; i <= n; cin >> x, i++, s.insert(x));cout << s.size();
}

C

n组数,每组两个,每次从第i组任选1个数,最后n组选出的和为x
dfs,时间复杂度O(2^100),明显超时

超时_
void dfs(int dep,int dis){if(dep==n+1){if(dis+a[dep]==x||dis+b[dep]==x)Yes();return;}dfs(dep+1,dis+a[dep]);dfs(dep+1,dis+b[dep]);
}

考虑剪枝,记忆化

#include<bits/stdc++.h>
using namespace std;
int a[110], b[110];
bool vis[110][10010];
int N, X;
void dfs(int n, int x) {if (n == N + 1 && x == X){cout<<"Yes";exit(0);}if (n == N + 1||vis[n][x]||x > X)return;//剪枝dfs(n + 1, x + a[n]); vis[n + 1][x + a[n]] = 1;dfs(n + 1, x + b[n]); vis[n + 1][x + b[n]] = 1;
}
int main(){cin >> N >> X;for(int i = 1; i <= N; i++)cin >> a[i] >> b[i];dfs(1, 0);cout<<"No";
}

ac了,甚至比dp快。我觉得这个更好理解。

考虑dp,设dp[i,j]前i次,可以到j距离。
i=n,j=x时即为所求

#include<bits/stdc++.h>
using namespace std;
int n, x, a, b, dp[102][100002];
int main() {dp[0][0]=1;//设置出生点cin >> n >> x;for (int i = 0; i < n; i++) {cin >> a >> b;for (int j = 0; j <= x; j++) //dp[i,j]跳i次,能否到达j?1:0if (dp[i][j]) {if (j + a <= x)dp[i + 1][j + a] = 1;if (j + b <= x)dp[i + 1][j + b] = 1;}}if(dp[n][x])cout<<"Yes";else cout<<"No";
}

D

相同的数字n叠在一起n次会消掉,每次输出剩余个数。
很明显的栈,发现用stl很慢好像还会爆,果断手写,轻松通过。

这个题很像宝开游戏“祖玛”,相同的叠在一起一定个数会消掉。
(可恶,我怎么会知道的,一看题就想到了)

#include<bits/stdc++.h>
using namespace std;
int n, noww;
pair<int, int>p[(int)2e5 + 3];//记录数字和该数字连续出现的次数
int main() {cin >> n;for (int i = 1, num; i <= n; i++) {cin >> num;if (i == 1 || num != p[noww].first)p[++noww] = {num, 1};//不一样或者第一次就直接往里放else {noww++;p[noww] = {num, p[noww - 1].second + 1};//连续个数增加了1if (p[noww].first == p[noww].second)noww -= num;//应该消的时候直接退回n个之前的地址}cout << noww << endl;}
}

E

施工中

ATCODER abc240部分题解相关推荐

  1. Atcoder abc 233 题解

    Atcoder abc 233 题解 A 10yen Stamp 答案就是两个数字的差/10之后上取整 记得判断res=0的情况就可以了 c++代码 #include<iostream> ...

  2. AtCoder abc256全题解(区间合并模板、矩阵快速幂优化dp、线段树……)

    文章目录 A B C-枚举 D-区间合并模板 E-图论建模,函数图的性质 题意 思路 代码 F-树状数组 题意 思路 代码 G-矩阵快速幂优化dp H-线段树 思路 实现 传送门 本文CSDN 本文j ...

  3. 「Atcoder」abc238 题解

    A - Exponential or Quadratic Editorial 解题思路 由数学归纳法可以证明当n >= 5时一定有 2 n > n 2 2^n > n^2 2n> ...

  4. AtCoder Regular Contest 题解

    arc138 比赛传送门 A 值域线段树动态开点 先读入k个数字,插入 然后读入剩下的数字x,查询比我小的最大下标,维护ans 如果答案ans大于等于n输出-1 #include<bits/st ...

  5. Atcoder题解与视频集

    开启Atcoder之路 开启Atcoder之路_sortmin的博客-CSDN博客_atcoder怎么用 atcoder心得 atcoder心得_404REN的博客-CSDN博客_atcoder怎么用 ...

  6. agc015F Kenus the Ancient Greek

    题意: 有$Q$次询问,每次给定$X_i$和$Y_i$,求对于$1\leq x \leq X_i , 1 \leq y \leq Y_i$,$(x,y)$进行辗转相除法的步数的最大值以及取到最大值的方 ...

  7. 【agc002f】Leftmost Ball(动态规划)

    [agc002f]Leftmost Ball(动态规划) 题面 atcoder 洛谷 题解 我们从前往后依次把每个颜色按顺序来放,那么如果当前放的是某种颜色的第一个球,那么放的就会变成\(0\)号颜色 ...

  8. Noip前的大抱佛脚----赛前任务

    赛前任务 tags:任务清单 前言 现在xzy太弱了,而且他最近越来越弱了,天天被爆踩,天天被爆踩 题单不会在作业部落发布,所以可(yi)能(ding)会不及时更新 省选前的练习莫名其妙地成为了Noi ...

  9. yyb省选前的一些计划

    突然意识到有一些题目的计划,才可以减少大量查水表或者找题目的时间. 所以我决定这样子处理. 按照这个链接慢慢做. 当然不可能只做省选题了. 需要适时候夹杂一些其他的题目. 比如\(agc/arc/cf ...

最新文章

  1. 解决 ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running?
  2. 虚拟串口工具Virtual Serial Port Driver(VSPD)
  3. MySQL数据库安全配置
  4. JMeter部分功能详解
  5. shell脚本常用语句用法笔记
  6. VueGoogleMaps在vue中的使用
  7. html 三大标签,网站三大标签的正确书写
  8. 信息安全管理ISO27001
  9. 怎么使用手机号申请邮箱,注册移动手机邮箱有哪些步骤?
  10. 如何搭建一个可以搜题的微信公众号?完整教程
  11. 抖音超火JavaScript实现网红太空人表盘 ~看程序员是如何用代码做华为太空手表
  12. 直播运营-直播抠图效果完整展示
  13. 【Android Gradle 插件】 Splits 配置 ② ( Splits#abi{} 脚本块配置 | 根据 CPU 架构进行分包 | AbiSplitOptions 配置简介 )
  14. 【OI生涯】我学OI是为了什么?
  15. 大数据与云计算技术周报(第150期)
  16. Git操作流程(非常详细)
  17. 字典(dict)的反转
  18. Mysql优化,是什么,如何优化(一)
  19. 新新新~Revit插件【建模助手】7大模块介绍
  20. TypeError: first argument must be an iterable of pandas objects, you passed an object of type “DataF

热门文章

  1. 项目管理十大知识领域(一)--- 项目整体管理(过程、输入、工具和技术、输出)
  2. FLASH 模拟程序学习笔记(1)
  3. 均值-中位数-众数-极差-中程数-方差-标准差-变异系数
  4. spring boot中Excel文件下载踩坑大全
  5. HBase二级索引的设计与应用(详解)
  6. ICOM IC-F26 使用MDC信令“蛙叫”及SQL设置
  7. 厉害了!竟然有程序员在GitHub上建了一个新华词典数据库
  8. 制作U盘启动BT5(BackTrack5)
  9. JS中刷新当前页面的方式
  10. 基于Java毕业设计学生公寓管理系统源码+系统+mysql+lw文档+部署软件