Acwing

模拟堆 1.题目2.基本思想3.代码实现 1.题目 维护一个集合,初始时集合为空,支持如下几种操作:

标签:Acwing  

合并集合 1.题目2.基本思想3.代码实现 1.题目 一共有

标签:Acwing  

A题 签到模拟即可 B题 单独考虑每一个a[i],如果i要是答案需要指针移动多少次,然后算完,排个序,指针移动最少的就是答案。

标签:Acwing  

思路:我们按照从小到大的顺序将数组逆转好,然后枚举数组首项,分别让其+1,-1,+0,然后求出公差,从前往后遍历即可。 代码: int ans1(){//不动int cha = (a[n] - a[1] +

标签:Acwing  

Acwing 题目打卡 708 偶数x先看题目首先这么多代码,肯定得用循环,对吧。把所有的的数全部找出来,比如1~20,我们找偶数是先在脑子里想;2,4,6,8,10·····。对吧

标签:偶数  题目  Acwing  

统一大小写按题意1.统计大小写字母个数2.按照要求转换为小写或大写,输出#include<cstdio>#include<cstring>#include<iostream>using namespace std;bool check(char c){//判断大小写 if(c>=a && c<=z) return 1; else return 0;}string s;int t;int main(){ cin>>t; while(t--){ ci

标签:Acwing  场周赛  

3994. 水果派题目链接:https://www.acwing.com/problem/content/3997/1. 题目描述食堂需要做至少 a 份苹果派和至少 b 份香蕉派。已知,一个苹果可以做 c 份苹果派,一个香蕉可以做 d 份香蕉派。食堂共可以采购不超过 k 个水果。请提供一种食堂采购水果的方案,以满足制作水果派的需求。输入格式第一行包含整

标签:Acwing  场周赛  

title: AcWing-2019-拖拉机date: 2022-01-05 19:37:43categories: AcWingtags: [AcWing,algorithm]2019. 拖拉机题目描述干了一整天的活,农夫约翰完全忘记了他把拖拉机落在田地中央了。他的奶牛非常调皮,决定对约翰来场恶作剧。她们在田地的不同地方放了 N 捆干草,这样一来,约翰想要开走拖拉机就必须先移除一些干草捆。拖拉机的位置以及 N 捆干草的位置

标签:拖拉机  Acwing  

数据结构(1)acwing目录数据结构(1)acwing1.单链表和邻接表(存储树和图)(1)将x插到head结点(2)将x插到k节点后面(3)删除下标是k的后面的点2.双链表:优化某些问题1.插入结点步骤:

标签:数据结构  Acwing  Arithmetic  learning  

目录数据结构(2)acwing1.trie树2.并查集(近乎O(1))3.堆数据结构(2)acwing1.trie树快速存储和查找字符串的集合结构特征:

标签:数据结构  Acwing  Arithmetic  learning  

数据结构(3) acwing目录数据结构(3) acwing1.hash表存储结构字符串哈希3.STL1.vector2.string3.queue4.priority_queue(就是堆)5.stack6.deque(双端队列)--basically not use7.set、multiset、map、multimap1.hash表

标签:数据结构  Acwing  Arithmetic  learning  

题目链接题目描述一个商人穿过一个 N×N 的正方形的网格,去参加一个非常重要的商务活动。他要从网格的左上角进,右下角出。每穿越中间 1 个小方格,都要花费 1 个单位时间。商人必须在 (2N−1) 个单位时间穿越出去。而在经过中间的每个小方格时,都需要缴纳一定的费用。这个商人期望在规定时间内用最少费用穿越出去。请问至少需要多少费用?注意:不能对角穿越各个小方格(即,只能向上下左右四个方向移动且不能离开网格)。题目模型子题目:摘花生因为要在(2N-1)个单位时间穿越出

标签:通行费  线性  最低  Acwing  dp  

题解借鉴两位大佬的解析 墨染空 && 野生铅笔本题是一道 01背包 的扩展题 —— 二维费用01背包问题把 野生宝可梦 看做物品,则捕捉他需要的 精灵球 个数就是第一费用,战斗皮神要掉的血就是第二费用在背包问题中,体积w与价值v是可以互逆的!可以将f[i]表示为体积为i能装的最大价值,也可以将f[i]表示为价值为i所需的最小体积。以上就是本题的

标签:Acwing  

竞赛链接A.糖果题目链接链接题目描述给定三个正整数 a,b,c。请计算 ⌊a+b+c2⌋,即 a,b,c 相加的和除以 2 再下取整的结果。输入格式第一行包含整数 T,表示共有 T 组测试数据。每组数据占一行,包含三个正整数 a,b,c。输出格式每组数据输出一行结果,表示答案。

标签:Acwing  场周赛  

url:4366. 上课睡觉 - AcWing题库题意:给n个石堆,相邻石堆可以合并现在要求每个石堆都相等,问最少合并多少次思路:由于不管咋个合并,石子数是不会变的那么就可以枚举一下合并成多少个石堆然后再用石子总数 / 目标石堆数,就为每堆石堆的石子数这时候就会发现,有的石堆数是无法合并成的因为石堆数必须为石子总数的质因子不然石堆数 * 每堆的石子数 != 石子总数了然后就是如何去判断合成x堆石堆是否合法这里我就没想到咋个去判断其实不用管咋

标签:Acwing  

url:4645. 选数异或 - AcWing题库题意:给n个数,再给m次查询,给一个数x每次询问给一个区间l,r,问是否能从$[l,r]$中选出两个下标不同的数使得它们的异或值等于x思路:这题有个异或性质我没想到(找两个数使得$a[l] ⊕ a[r] = x$根据异或的交换性来说式子可以变成:$a[r] ⊕ x = a[l]$那么我们直接用$a[r] ⊕ x$即可得到$a[l]$这时候问题就变成了去找离r最近的$a[r] ⊕ x$即可暴力思路就是先枚举后端点,往前枚举前端点,记录每个点的

标签:Acwing  选数异  

题意:给一个长度为n的只包含G和H字符串要求统计所有长度>=3且只有一个不一样的字符的子串个数思路:最开始的思路就是找到一个满足的三个字符然后向两边扩展然后就寄了先不论时间复杂度每添加一个字符并不是贡献+1然后就换了一种思路每次碰到那个特殊字符在中间就向两边扩展看看两边的数字是多少然后贡献等于x * y然鹅发现贡献并不是这么多比如GGHGG的贡献是6通过这种方法算出来只有4看了题解原来还要考虑那个

标签:孤独  照片  Acwing  

算法分析棋盘型状态压缩dp这类dp有一个通用的状态表示法:f[i][j][k],表示前i行(放了j个棋子后)的状态表示为k。由于本题无棋子要求,因此可以省去中间一维,即:  用f[i][j]表示前i行土地的状态为j。首先由于玉米地有不肥沃的地方不能种植,因此需要通过二进制表示出来可以种植和不可以种植的地方,我们是将整行用一个二进制数表示的,可种为0,不可种为1,在输入的时候即可判断:  g[i] += (!x<<(j-1)) //g[i]为每一行土地的二进制表示由于是棋盘型,因此根据我们的

标签:玉米田  Acwing  

Trie树 学习感受相比于之前学习的kmp匹配算法,Trie树的实现还是非常好理解的。(kmp算法太难了orz)从直观的模拟过程来看,trie树就像一颗树一样,从上(根节点)到下(叶节点)有序串联起来组成一个字符串。每一个额外标记结束的位置表示字符串的结束,通过计算标记数即可指导一共有多少该字符串。

标签:字符串  Acwing  trie  

AcWing 第1场周赛竞赛 - AcWing3577 选择数字3577. 选择数字 - AcWing题库朴素暴力两层循环#include <cstdio>#include <iostream>#include <unordered_set>using namespace std;const int N = 101;int a[N], b[N];int main() { int n

标签:算法  周赛篇  Acwing  场周赛  

1
2

相关推荐

近似文章

热门文章

推荐文章

相关标签