寻宝

题目链接: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相关推荐

  1. 牛客网的刷题之旅——2020/8/6

    机器人走方格II 题目链接: https://www.nowcoder.com/questionTerminal/b3ae8b9782af4cf29253afb2f6d6907d 题目描述 有一个Xx ...

  2. 牛客网Java刷题知识点之关键字static、static成员变量、static成员方法、static代码块和static内部类...

    不多说,直接上干货! 牛客网Java刷题知识点之关键字static static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现一个"伪全局"的概 ...

  3. 牛客网Java刷题知识点之构造函数可以调用一般函数,但是一般函数不可以直接调用构造函数...

    不多说,直接上干货! 通过 牛客网Java刷题知识点之构造函数是什么.一般函数和构造函数什么区别呢.构造函数的重载.构造函数的内存图解 我们对构造函数有了一个比较清楚的认识,当我们在创建对象时,我们会 ...

  4. 牛客网Java刷题知识点之Java 集合框架的构成、集合框架中的迭代器Iterator、集合框架中的集合接口Collection(List和Set)、集合框架中的Map集合...

    不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素. ...

  5. 牛客网Java刷题知识点之ArrayList 、LinkedList 、Vector 的底层实现和区别

    不多说,直接上干货! 这篇我是从整体出发去写的. 牛客网Java刷题知识点之Java 集合框架的构成.集合框架中的迭代器Iterator.集合框架中的集合接口Collection(List和Set). ...

  6. 牛客网Veirlog刷题答案目录(持续更新)

    牛客网Veirlog刷题答案目录(持续更新) 基础篇 进阶篇 基础篇 1.VL1--四选一多路选择器 2.VL2--异步复位的串联T触发器 3.VL3--奇偶校验 4.VL4--移位运算与乘法 5.V ...

  7. 牛客网java刷题笔记2019-1-4

    牛客网java刷题笔记 2019-1-4 1.java中可以用类中构造器调用其他类构造器(这个和C++中构造函数很类似)用于初始化程序变量值, 构造器和方法的区别: 功能和作用的不同 构造器是为了创建 ...

  8. 牛客网SQL刷题笔记(MySQL)

    牛客网SQL刷题笔记(MySQL) 此博客集合LeetCode.牛客网常见的题型及其解法,侵删 目录 牛客网SQL刷题笔记(MySQL) 类型1:查找排名第几的数据 SQL2 查找入职员工时间排名倒数 ...

  9. 牛客网C++刷题 万能头文件

    牛客网C++刷题 万能头文件 最近在牛客网刷题,涉及到C++编码时有时不记得头文件名称,这时可以使用 #include<bits/stdc++.h> 这个万能头文件来代替. 特此记录一下.

最新文章

  1. Python(basic)Day-1
  2. 实时体积云渲染(地平线):二.Perlin噪声和Worley噪声
  3. HDU-1159-Common Subsequence
  4. jQuery事件命名空间多事件绑定自定义事件js 命名空间 javascript命名空间
  5. python从字符串中删除字符_在Python中从字符串中删除字符
  6. 车牌识别用php算法,车牌识别算法实现及其代码实现之一:车牌区域检测
  7. easyboot制作xp、win7、ubuntu、老毛桃winpe、深山红叶dos工具箱多合一光盘
  8. 计算机选题方向怎么写,计算机方面方向论文选题 计算机方面论文题目怎么定...
  9. ueditor修改默认图片保存路径,ueditor根据楼盘ID保存图片路径
  10. drupal简体中文语言包安装方法
  11. 安装gms 的拨号盘
  12. 2022-2028全球与中国数字化销售室软件市场现状及未来发展趋势
  13. 软件工程师典藏 C# 程序开发范例宝典 第3版
  14. 青春不负韶光,梦想再次起航——记JavaEE班毕业典礼
  15. matlab取矩阵元素的模,Matlab矩阵元素提取
  16. 用于威胁情报分析的虚拟机
  17. 阿里云1+X-云计算开发与运维-中级(判断题)
  18. 微软发布InstaLoad电池技术 不考虑极性
  19. Invalid prop: type check failed for prop “total“. Expected Number with value x, got String with valu
  20. 最新「深度学习社区发现」综述论文,174篇文献概述六大类方法(含Github资源)...

热门文章

  1. 100%解决 微信备份聊天数据提示当前网络状况复杂,请尝试使用其他网络或提示手机和电脑不在同一网络的方法。
  2. 想不到马云也有向现实低头的时候!
  3. drill支持的数据类型
  4. 中国丙炔醇行业研究与投资预测报告(2022版)
  5. 2022-2028年中国光存储行业发展战略规划及投资方向研究报告
  6. Linux手机DIY.夏新E600和飞利浦968移植软件的开始
  7. FastBFT共识协议:Scalable Byzantine Consensus via Hardware-assisted Secret Sharing
  8. 高德地图api绘制地图(转载)
  9. 回溯算法与深度优先算法
  10. 调用Camera API实现自己的拍照和摄像程序