牛客网的刷题之旅——2020/7/30
寻宝
题目链接:https://www.nowcoder.com/questionTerminal/59aff3b7a9094432893302c9ee7794e8
题目描述
亮亮解出了卷轴隐藏的秘密,来到了一片沼泽地。这里有很多空地,而面试直通卡可能埋在任意一块空地中,好在亮亮发现了一堆木材,他可以将木材铺在两个空地之间的沼泽地上。因为亮亮不知道面试直通卡具体在哪一块空地中,所以必须要保证任意一块空地对于亮亮来说是可以抵达的。 “怎么还有鳄鱼!没办法,看来有些空地不能直接到达了。” 亮亮虽然没有洁癖,但是沼泽地实在太臭了,所以亮亮不会循环利用木材。而且木材不能拼接在一起使用,所以亮亮必须要知道在耗费木材最少的情况下,最长的那根木材至少需要多长。
输入描述:
第一行包含两个整数N(1≤N≤10000),M(1≤M≤1000000)。N表示公有N块空地。
接下来M行,每行包含三个整数P(1≤P≤N),Q(1≤Q≤N),K代表P,Q两个间没有鳄鱼,需要耗费K的木材。
输出描述:
一个整数,即耗费木材最少的情况下,最长的那根木材长度。
示例1
输入
4 3
1 2 1
2 3 1
3 4 2
输出
2
思路:最终要求得在耗费木材最少的情况下,最长的那根木材长度。通过构造最小生成树来求耗费木材最少的情况,同时求得最长的木材长度。
ac代码:
#include<bits/stdc++.h>
using namespace std;
//存储边的信息
struct vg
{int left,right,value;
};
int parent[10010];
//排序函数
bool cmp(vg v1,vg v2)
{return v1.value<v2.value;
}
//并查集
int find(int root)
{int t=root,k;while(parent[root]!=root)root=parent[root];//路径压缩while(parent[t]!=root){k=parent[t];parent[t]=root;t=k;}return root;
}int main()
{int n,m;scanf("%d %d",&n,&m);for(int i=1;i<=n;i++)parent[i]=i;int maxlen=0;vg v[m];for(int i=0;i<m;i++){scanf("%d %d %d",&v[i].left,&v[i].right,&v[i].value);}sort(v, v+m, cmp);for(int i=0;i<m;i++){int r1=find(v[i].left),r2=find(v[i].right);if(r1!=r2){parent[r1]=r2;if(maxlen<v[i].value)maxlen=v[i].value;}}printf("%d\n",maxlen);return 0;
}
回文串
题目链接:https://www.nowcoder.com/questionTerminal/655a43d702cd466093022383c24a38bf
题目描述
给定一个字符串,问是否能通过添加一个字母将其变为回文串。
输入描述:
一行一个由小写字母构成的字符串,字符串长度小于等于10。
输出描述:
输出答案(YES\NO).
示例1
输入
coco
输出
YES
思路:我的思路是判断能否通过去掉一个字母变成回文串。如果原来是回文串,那加上一个字母也能变成回文串。
ac代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{string s;while(cin>>s){int i=0,j=s.length()-1,flag=0;for(;s[i]==s[j]&&i<j;i++,j--);if(i<j){if(s[i]==s[j-1]){j--;for(;s[i]==s[j]&&i<j;i++,j--);}else if(s[i+1]==s[j]){i++;for(;s[i]==s[j]&&i<j;i++,j--);}if(i>=j)flag=1;elseflag=0;}elseflag=0;if(flag)cout<<"YES"<<endl;elsecout<<"NO"<<endl;}return 0;
}
最短排序
题目链接:
https://www.nowcoder.com/questionTerminal/a6926700bd424820bd73777f1cb2ef60
题目描述
对于一个无序数组A,请设计一个算法,求出需要排序的最短子数组的长度。
给定一个整数数组A及它的大小n,请返回最短子数组的长度。
测试样例:
[1,5,3,4,2,6,7],7
返回:4
ac代码:
class ShortSubsequence {public:int findShortest(vector<int> A, int n) {// write code hereint max_value=A[0],left=n,right=0;for(int i=1;i<n;i++){if(A[i]<max_value){int j;for(j=0;j<i;j++){if(A[i]<A[j])break;}if(j<left)left=j;right=i;}elsemax_value=A[i];}if(left==n)return 0;elsereturn right-left+1;}
};
牛客网的刷题之旅——2020/7/30相关推荐
- 牛客网的刷题之旅——2020/8/6
机器人走方格II 题目链接: https://www.nowcoder.com/questionTerminal/b3ae8b9782af4cf29253afb2f6d6907d 题目描述 有一个Xx ...
- 牛客网Java刷题知识点之关键字static、static成员变量、static成员方法、static代码块和static内部类...
不多说,直接上干货! 牛客网Java刷题知识点之关键字static static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个"伪全局"的概 ...
- 牛客网Java刷题知识点之构造函数可以调用一般函数,但是一般函数不可以直接调用构造函数...
不多说,直接上干货! 通过 牛客网Java刷题知识点之构造函数是什么.一般函数和构造函数什么区别呢.构造函数的重载.构造函数的内存图解 我们对构造函数有了一个比较清楚的认识,当我们在创建对象时,我们会 ...
- 牛客网Java刷题知识点之Java 集合框架的构成、集合框架中的迭代器Iterator、集合框架中的集合接口Collection(List和Set)、集合框架中的Map集合...
不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素. ...
- 牛客网Java刷题知识点之ArrayList 、LinkedList 、Vector 的底层实现和区别
不多说,直接上干货! 这篇我是从整体出发去写的. 牛客网Java刷题知识点之Java 集合框架的构成.集合框架中的迭代器Iterator.集合框架中的集合接口Collection(List和Set). ...
- 牛客网Veirlog刷题答案目录(持续更新)
牛客网Veirlog刷题答案目录(持续更新) 基础篇 进阶篇 基础篇 1.VL1--四选一多路选择器 2.VL2--异步复位的串联T触发器 3.VL3--奇偶校验 4.VL4--移位运算与乘法 5.V ...
- 牛客网java刷题笔记2019-1-4
牛客网java刷题笔记 2019-1-4 1.java中可以用类中构造器调用其他类构造器(这个和C++中构造函数很类似)用于初始化程序变量值, 构造器和方法的区别: 功能和作用的不同 构造器是为了创建 ...
- 牛客网SQL刷题笔记(MySQL)
牛客网SQL刷题笔记(MySQL) 此博客集合LeetCode.牛客网常见的题型及其解法,侵删 目录 牛客网SQL刷题笔记(MySQL) 类型1:查找排名第几的数据 SQL2 查找入职员工时间排名倒数 ...
- 牛客网C++刷题 万能头文件
牛客网C++刷题 万能头文件 最近在牛客网刷题,涉及到C++编码时有时不记得头文件名称,这时可以使用 #include<bits/stdc++.h> 这个万能头文件来代替. 特此记录一下.
最新文章
- Python(basic)Day-1
- 实时体积云渲染(地平线):二.Perlin噪声和Worley噪声
- HDU-1159-Common Subsequence
- jQuery事件命名空间多事件绑定自定义事件js 命名空间 javascript命名空间
- python从字符串中删除字符_在Python中从字符串中删除字符
- 车牌识别用php算法,车牌识别算法实现及其代码实现之一:车牌区域检测
- easyboot制作xp、win7、ubuntu、老毛桃winpe、深山红叶dos工具箱多合一光盘
- 计算机选题方向怎么写,计算机方面方向论文选题 计算机方面论文题目怎么定...
- ueditor修改默认图片保存路径,ueditor根据楼盘ID保存图片路径
- drupal简体中文语言包安装方法
- 安装gms 的拨号盘
- 2022-2028全球与中国数字化销售室软件市场现状及未来发展趋势
- 软件工程师典藏 C# 程序开发范例宝典 第3版
- 青春不负韶光,梦想再次起航——记JavaEE班毕业典礼
- matlab取矩阵元素的模,Matlab矩阵元素提取
- 用于威胁情报分析的虚拟机
- 阿里云1+X-云计算开发与运维-中级(判断题)
- 微软发布InstaLoad电池技术 不考虑极性
- Invalid prop: type check failed for prop “total“. Expected Number with value x, got String with valu
- 最新「深度学习社区发现」综述论文,174篇文献概述六大类方法(含Github资源)...
热门文章
- 100%解决 微信备份聊天数据提示当前网络状况复杂,请尝试使用其他网络或提示手机和电脑不在同一网络的方法。
- 想不到马云也有向现实低头的时候!
- drill支持的数据类型
- 中国丙炔醇行业研究与投资预测报告(2022版)
- 2022-2028年中国光存储行业发展战略规划及投资方向研究报告
- Linux手机DIY.夏新E600和飞利浦968移植软件的开始
- FastBFT共识协议:Scalable Byzantine Consensus via Hardware-assisted Secret Sharing
- 高德地图api绘制地图(转载)
- 回溯算法与深度优先算法
- 调用Camera API实现自己的拍照和摄像程序