京东的题怎么做呀,已经放弃

京东的题目好难,至今o offer,心灰意冷#京东#
全部评论
我太难了,题比我还难
点赞 回复 分享
发布于 2019-08-24 19:57
没看懂合唱队啥意思
点赞 回复 分享
发布于 2019-08-24 19:54
合唱团:100%,把排序的跟没排序的两个数组分别从左到右累加,元素个数相同且元素的和相同就算一队 教室踢人:创建People对象,放TreeSet里按朋友数降序排列,每次剔除第一个,同时把朋友关系消除,等到set里第一个People没朋友了就结束,应该有啥问题还没来得及调,只对了18%
点赞 回复 分享
发布于 2019-08-24 21:12
我和东哥无缘做兄弟了,暴风哭泣,嘤嘤嘤
点赞 回复 分享
发布于 2019-08-24 19:57
0 % 0%
点赞 回复 分享
发布于 2019-08-24 21:21
太难了。。。时间只够做第一题。。。第二题没做。 #include <iostream> #include <string.h>   #include <algorithm>   #include <stdio.h>   #include <math.h>   #include <queue>   #define MAXN 300100   #define inf 0x3f3f3f3f      using namespace std; typedef long long LL; int dir[4][2] = {-1,0, 0,1,1,0,0,-1}; int ans = 25; vector<vector<int> > mp(5, vector<int>(5)); bool isIn(int x, int y){     if (x>=0 && x<5 && y>=0 && y<5) return true;     return false; } int step(vector<vector<int> > &mp, int sx, int sy, int target){     mp[sx][sy]=-1;     int ans = 1;     for (int i=0;i<4;i++){         int x=sx+dir[i][0];         int y=sy+dir[i][1];         if (isIn(x,y) && mp[x][y]!=-1 && mp[x][y] == target){             ans += step(mp, x, y , target);         }     }     return ans; } void down(vector<vector<int> > &mp){     for (int j=0;j<5;j++){         int endrow = 4;         while (endrow >=0 && mp[endrow][j]!=-1) endrow--;         int startrow = endrow;         while (startrow >=0 && mp[startrow][j]==-1) startrow--;         while (startrow >= 0){             swap(mp[startrow][j], mp[endrow][j]);             startrow--;             endrow--;         }     } } void dfs(vector<vector<int> > &mp){     bool no_3 = true;     for (int i=0;i<5;i++){         for (int j=0;j<5;j++){             if (mp[i][j]==-1) continue;             vector<vector<int> > temp(mp);             int nums = step(mp, i, j, mp[i][j]);             if (nums < 3) {                 mp.assign(temp.begin(), temp.end());                 continue;             }else{                 no_3 = false;                 down(mp);                 dfs(mp);                 mp.assign(temp.begin(), temp.end());             }         }     }     if (no_3){         int x=0;         for (int i=0;i<5;i++){             for (int j=0;j<5;j++)                 if (mp[i][j]!=-1)                     x++;         }         ans = min(ans, x);     }     return; } int main(){     int x;     for (int i=0;i<5;i++){         for (int j=0;j<5;j++){             scanf("%d", &x);             mp[i][j] = x;         }     }     dfs(mp);     printf("%d\n", ans);     return 0; }
点赞 回复 分享
发布于 2019-08-24 21:18
刚开始两道linux命令,sed和shc见到没见过,我怀疑是不是投错岗位了;再三看标题确认。。编程两道全是36%,我差点怀疑是不是系统不过就36😂😂
点赞 回复 分享
发布于 2019-08-24 21:04
我也已经放弃了,哈哈,我是东哥得不到的男人
点赞 回复 分享
发布于 2019-08-24 20:05
怒交白卷。。。我不配做东哥的兄弟
点赞 回复 分享
发布于 2019-08-24 20:25
男生女生最少人数剔除教室,裸二分图最小覆盖点集,a了100
点赞 回复 分享
发布于 2019-08-25 07:47
试了LeetCode768,测试案例都过了,然而,考试结束才试的
点赞 回复 分享
发布于 2019-08-24 21:43
第一题合唱团a了,第二题考场t人写了一个多小时0.18,太难了
点赞 回复 分享
发布于 2019-08-24 21:09
实在不会就交卷了,看到天台上这么多兄弟,无奈地苦笑。我刚才交完卷,有点想放弃进入互联网行业了。
点赞 回复 分享
发布于 2019-08-24 20:50
有人做消消乐跟迷宫吗??求指点!
点赞 回复 分享
发布于 2019-08-24 20:38
我的天啊,这题真的好难。。。。。。
点赞 回复 分享
发布于 2019-08-24 19:55
//结束后想明白了,复杂度O(N); #include<iostream> #include<vector> using namespace std; int main() { int N; cin >> N; vector<int> H; int temp; vector<int> A(N,0); for (int i=0; i<N; i++) { cin >> temp; H.push_back(temp); } if(N==1) { cout << 1; return 0; } A[N-1] = H[N-1]; for(int j=N-2; j>=0; j--) { if( H[j]<A[j+1] ) A[j] = H[j]; else A[j] = A[j+1]; } int count=1; int res = H[0]; for(int i=1; i<N; i++) { if( H[i]>=res && A[i]>=H[i]) { count++; res = H[i];  }  } cout << count; return 0; }
点赞 回复 分享
发布于 2019-08-25 14:08
放弃了
点赞 回复 分享
发布于 2019-08-25 00:27
笔试题很烂,就一定没有后续了吧?
点赞 回复 分享
发布于 2019-08-25 00:24
合唱团那个 import java.util.*; import java.util.Arrays; public class Main {     public static void main(String[] args) {         Scanner sc=new Scanner(System.in);         int n=sc.nextInt();         int[] nums=new int[n];         int[] temps=new int[n];         for (int i = 0; i <n ; i++) {             int in=sc.nextInt();             nums[i]=in;             temps[i]=in;         }         int res=0;         Set<Integer> help=new HashSet<>();         Arrays.sort(nums);         for (int i = 0; i < n; i++) {             if (help.size()==0)             {res++;}             if(help.contains(nums[i]))                 help.remove(nums[i]);             else help.add(nums[i]);             if(help.contains(temps[i]))                 help.remove(temps[i]);             else help.add(temps[i]);         }         System.out.println(res);     } }
点赞 回复 分享
发布于 2019-08-25 00:08
def connect_to_X(data):     temp = data     temp_2 = copy.deepcopy(temp)     # 解决横向连通     for i in range(len(temp)):         for j in range(len(temp[i])):             if j >= len(temp[i])-2:                 break             else:                 if temp[i][j] == temp[i][j+1] == temp[i][j+2]:                     temp_2[i][j], temp_2[i][j+1], temp_2[i][j+2] = "X", "X", "X"     # 解决竖向连通     for i in range(len(temp)):         for j in range(len(temp[i])):             if i >= len(temp)-2:                 break             else:                 if temp[i][j] == temp[i+1][j] == temp[i+2][j]:                     temp_2[i][j], temp_2[i+1][j], temp_2[i+2][j] = "X", "X", "X"     return down(temp_2) def down(data):     temp = data     temp_2 = copy.deepcopy(temp)     for i in range(len(temp)):         for j in range(len(temp[i])):             if temp[i][j] == "X":                 temp_2[0][j] = "X"                 for k in range(1, i+1):                     temp_2[k][j] = temp[k-1][j]     if temp_2 == temp:         print(temp_2)     else:         return connect_to_X(temp_2) with open(r"D:/Downloads/test.txt") as f:     import copy     lines = f.readlines()     n = len(lines)     temp = []     for i in lines:         temp.append(i.strip().split(" "))     connect_to_X(temp)
点赞 回复 分享
发布于 2019-08-24 23:11

相关推荐

牛客84809583...:举报了
点赞 评论 收藏
分享
Rena1ssanc...:对的,要是面评没太烂,勤更新简历等捞就行了,腾讯可以无限复活
点赞 评论 收藏
分享
评论
4
18
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务