京东算法题 第一题,求解

#京东##笔试题目#
全部评论
%27
点赞 回复 分享
发布于 2019-08-24 20:32
感觉不是特别难,从第一个数开始 一个指针记录第一个数, 然后第二指针往后遍历,当遇到一个比记录数大或者相等的时候,分组数加1, 然后用这个新的数替换原来的记录数,如此遍历完即可
点赞 回复 分享
发布于 2019-08-24 21:00
题目都看半天😂
点赞 回复 分享
发布于 2019-08-24 20:31
求代码 还有第二题
点赞 回复 分享
发布于 2019-08-24 20:34
36
点赞 回复 分享
发布于 2019-08-24 20:34
 #include<bits/stdc++.h> using namespace std; const int maxn = 1e5+5; const int inf = 0x3f3f3f3f; typedef long long ll; ll a[maxn], n, minn[maxn], maxx[maxn]; int main() {         ios::sync_with_stdio(0);     cin>>n;     for(ll i=1; i<=n; i++)     cin>>a[i];     minn[n] = a[n];     for(ll i=n-1; i>=1; i--)     minn[i] = min(minn[i+1], a[i]);     maxx[1] = a[1];     for(ll i=2; i<=n; i++)     maxx[i] = max(maxx[i-1], a[i]);     ll ans = 1;     for(ll i=2; i<=n; i++)     if(maxx[i-1] <= minn[i]) ans++;     cout<<ans<<endl;     return 0; }
点赞 回复 分享
发布于 2019-08-24 20:42
第一题题目好难懂,ac了,第二题粘测试用例,直接告辞
点赞 回复 分享
发布于 2019-08-24 20:42
不应该是分组从高到低吗? 题目里都写得从低到高, 有人注意吗,还是我理解错了
点赞 回复 分享
发布于 2019-08-24 20:52
局部插入排序
点赞 回复 分享
发布于 2019-08-24 20:55
leetcode 768. Max Chunks To Make Sorted II
点赞 回复 分享
发布于 2019-08-24 20:59
就是分组,分出来的组从低到高排完之后,整个数组也能满足从低到高。
点赞 回复 分享
发布于 2019-08-24 21:01
36
点赞 回复 分享
发布于 2019-08-24 21:03
18%😂😂😂
点赞 回复 分享
发布于 2019-08-24 21:03
先找数组中最小的数,然后跟它之前的数组成一个分组。然后从这个索引开始往后找剩余数组中最小的数,再跟之前的数划分一个组。直到找到数组末尾。一顿操作过了两个用例,粘进去一看发现27%,超时,难受啊。
点赞 回复 分享
发布于 2019-08-24 21:13
https://www.nowcoder.com/discuss/232733 我帖子写了,供参考
点赞 回复 分享
发布于 2019-08-24 21:17

相关推荐

评论
点赞
6
分享
牛客网
牛客企业服务