Atcoder ABC340 A-D题解

news/2024/11/28 5:39:40/

比赛链接:ABC340

话不多说,看题。

Problem A:

签到。

#include <bits/stdc++.h>
using namespace std;
int main(){int a,b,d;cin>>a>>b>>d;for(int i=a;i<=b;i+=d)cout<<i<<endl;return 0;
}

Problem B:

还是签到题。一个vector就搞定了。

#include <bits/stdc++.h>
using namespace std;
int main(){int q;cin>>q;vector<int> a;while(q--){int tp,x;cin>>tp>>x;if(tp==1)a.push_back(x);elsecout<<a[a.size()-x]<<endl;}return 0;
}

Problem C:

记忆化搜索即可,直接拿个map维护就ok了,dp_{i}=dp_{\left \lfloor \frac{i}{2} \right \rfloor}+dp_{\left \lfloor \frac{i}{2} \right \rfloor}+i

#include <bits/stdc++.h>
using namespace std;
map<int,int> mem;
int dfs(int x){if(x<2)return 0;if(mem.count(x))return mem[x];return mem[x]=dfs(x/2)+dfs(x/2+bool(x%2))+x; 
}
int main(){int n;cin>>n;cout<<dfs(n)<<endl;return 0;
}

Problem D:

一道图论。题目没有保证不出现环,所以建图。所以题目变成1到n的最短路径。跑一边Dijkstra即可。

#include <bits/stdc++.h>
using namespace std;
const int maxn=200005;
long long dis[maxn];
bool vis[maxn];
vector<long long> graph[maxn],cost[maxn];
struct node{long long dist;long long p;friend bool operator < (node a,node b){return a.dist>b.dist;}
};
priority_queue<node> pq;
void dijkstra(int s){dis[s]=0;pq.push((node){0,s});while(pq.size()){node tmp=pq.top();pq.pop();int u=tmp.p;if(vis[u])continue;vis[u]=true;for(int i=0;i<graph[u].size();i++){long long v=graph[u][i];long long w=cost[u][i];if(dis[v]>dis[u]+w){dis[v]=dis[u]+w;if(!vis[v])pq.push((node){dis[v],v});}}}
}
int main(){int n;cin>>n;//记得初始化dis数组for(int i=1;i<n;i++){int a,b,x;cin>>a>>b>>x;graph[i].push_back(i+1);cost[i].push_back(a);graph[i].push_back(x);cost[i].push_back(b);}dijkstra(1);cout<<dis[n]<<endl;return 0;
}

OK,以上就是本期的全部内容了。下期更新ABC341的题解。

友情提示:本期的全部代码都有问题,请不要无脑Ctrl C+Ctrl V


http://www.ppmy.cn/news/1360350.html

相关文章

二十四、k8s 资源管理

目录 一、资源配置范围管理 LimitRange介绍 1、LimitRange 可以做什么: 2、 资源限制和请求的约束 3、创建LimitsRange对象 4、示例:创建一个pod 5、测试用例 测试1: 测试2: 测试3: 二、资源服务质量管理(Requests Qos) 1、Qos级别分类: 1.1、Guarantee…

redis GEO 类型原理及命令详解

目录 前言 一、GeoHash 的编码方法 二、Redis 操作GEO类型 前言 我们有一个需求是用户搜索附近的店铺&#xff0c;就是所谓的位置信息服务&#xff08;Location-Based Service&#xff0c;LBS&#xff09;的应用。这样的相关服务我们每天都在接触&#xff0c;用滴滴打车&am…

Oracle 总结

Oracle常规命令 conn 用户/密码--客户端连接的命令 show user —显示当前登录的用户增删改查 增 insect into 表名(列名列表) values(值列表);删 删除符合条件数据 delete from EMP where ENAME ‘xxx’;删除所有EMP 所有数据 delete from EMP;截断表 truncate table EMP;注…

【Leetcode】2583. 二叉树中的第 K 大层和

文章目录 题目思路代码结果 题目 题目链接 给你一棵二叉树的根节点 root 和一个正整数 k 。 树中的 层和 是指 同一层 上节点值的总和。 返回树中第 k 大的层和&#xff08;不一定不同&#xff09;。如果树少于 k 层&#xff0c;则返回 -1 。 注意&#xff0c;如果两个节点与根…

【软考】传输层协议之UDP

目录 一、说明二、特点 一、说明 1.用户数据报协议&#xff08;User Datagram Protocol&#xff09;是一种不可靠的、无连接的协议&#xff0c;可以保证应用程序进程间的通信 2.与TCP相比&#xff0c;UDP是一种无连接的协议&#xff0c;它的错误检测功能要弱很多 3.TCP有助于提…

TiDB 社区智慧合集丨TiDB 相关 SQL 脚本大全

非常感谢各位 TiDBer 在之前 【TiDBer 唠嗑茶话会 48】非正式 TiDB 相关 SQL 脚本征集大赛&#xff01;( https://asktug.com/t/topic/996635 )里提供的各种常用脚本。 在这篇文章中&#xff0c;我们整理了社区同学提供的一系列 TiDB 相关 SQL 脚本&#xff0c;希望能为大家在…

重看LeakCanary

LeakCanary是我很久之前看的东西了&#xff0c;我当时侯对它的印象就是它可以用来检测内存泄漏&#xff0c;具体原理就是将弱引用对象延迟个5s然后看是否被回收,如果没有被回收,那么就说明发生了内存泄漏,其他的也没有仔细地看 现在就详细地梳理一遍这个流程&#xff1a; 1.L…

Oracle EBS R12.1 FA 批量计划外折旧

在资产工作台上可以进行单个资产的计划外折旧&#xff0c;如果进行批量计划外折旧的话就需要进行开发客户化form或者webadi 进行数据上载后调用FA 标准API了 以下是标准API的demo示例 DECLAREl_trans_rec FA_API_TYPES.trans_rec_type; l_asset_hdr_rec FA_API_TYPES.asset_hdr…