拼多多2018/8/5算法工程师笔试(代码片段)

dshn dshn     2022-12-20     493

关键词:

给定一个含有N<=100个用户的朋友列表<=100,对于一个指定用户,找到这个用户最可能认识的人。最可能认识的人定义为这个人和当前用户不是朋友关系(a是b的朋友,b是a的朋友),但是有最多共同朋友。如果用户和所以人都没有共同朋友返回-1.

输入:

5 0
1 2 3
4 0
4 0
4 0
1 2 3

输出:
4

c++代码

/*
5 0
1 2 3
4 0
4 0
4 0
1 2 3
*/
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <vector>
using namespace std;

int n,m;
string a[110];

int main()

    scanf("%d%d", &n,&m);
    getchar();
    for (int i=0; i<n; i++)
    
        getline(cin, a[i]);
        // cout<<a[i]<<endl;
    
    int maxs=-1;
    int mark=-1;
    for(int k=0; k<n; k++)
    
        if(k==m)
            continue;
        int count=0;
        int key=0;
        for(int i=0; i<a[m].length(); i+=2)
        

            int val = a[m][i] - 48;

            for(int j=0; j<a[k].length(); j+=2)
            

               int aa = a[val][j] - 48;
               if(val==k&&aa==m)
               
                   key=1;
                   break;
               
               // if(val==aa)
                if(a[m][i]==a[k][j])
                
                    count++;
                    break;
                

            
            if(key)
            continue;
        
        if(key)
            continue;
        if(count>maxs)
        
            maxs=count;
            mark=k;
        
    

    printf("%d
",mark);

    return 0;

java代码:

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;

public class QuestionThree 

    public static void main(String[] args) 
        Scanner in=new Scanner(System.in);
        int n=in.nextInt();
        int k=in.nextInt();
        in.nextLine();
        HashMap<Integer, ArrayList<Integer>> inputMap=new HashMap<>();
        for(int i=0;i<n;i++) 
            String s=in.nextLine();
            ArrayList<Integer> tempList=new ArrayList();
            for(String val:s.split(" ")) 
                tempList.add(Integer.parseInt(val));
            if(i==k||!tempList.contains(k))
                inputMap.put(i,tempList);
        
        System.out.println(find(k, inputMap));
    
    
    public static int find(int k, HashMap<Integer, ArrayList<Integer>> inputMap) 
        ArrayList<Integer> kList=inputMap.get(k);
        Iterator iter=inputMap.entrySet().iterator();
        int index=Integer.MAX_VALUE;
        int maxFriends=0;
        while (iter.hasNext()) 
            Map.Entry  entry=(Map.Entry) iter.next();
            ArrayList<Integer>  tempList=(ArrayList<Integer>) entry.getValue();
            int count=0;
            if((int)entry.getKey()==k)  continue;
            for(int val:tempList) 
                if(kList.contains(val))
                    count++;
            if(count>maxFriends) 
                maxFriends=count;
                index=(int) entry.getKey();
            
            if(maxFriends==count&&index>(int)entry.getKey())
                index=(int)entry.getKey();
        
        
        return index;
    

 







(4道全a)拼多多2021届提前批-服务端研发工程师笔试(代码片段)

目录一、分割矩阵(1-8)(A100%)代码一:二、移动士兵(A)代码:三、背包(A了80%)四、显著特征(X可以被Y整除)(A100%)一、分割矩阵(1-8)( 查看详情

(4道全a)拼多多2021届提前批-服务端研发工程师笔试(代码片段)

目录一、分割矩阵(1-8)(A100%)代码一:二、移动士兵(A)代码:三、背包(A了80%)四、显著特征(X可以被Y整除)(A100%)一、分割矩阵(1-8)( 查看详情

2021校招拼多多提前批(代码片段)

2021拼多多校招提前批笔试时间:2020-08-02算法飞行棋,输入K(距离),N(掷骰子的次数),问最后飞行棋到终点的距离是多少?,需要返回多少次?(因为飞行棋如果超出终点的话会返回的)如果为0的话输出“paradox”。两个骰子... 查看详情

拼多多服务端实习生笔试-滑动窗口2018/4/3(代码片段)

有一整数数组A[n],滑动窗口大小为k,在A上从左到右移动,每次一步,求此过程中每步的子数组的最大值与最小值的差值eg:数组A=13-1-35367   k=3滑动窗口的位置            &nbs... 查看详情

拼多多笔试记录

 一个二叉树的有2016个节点  最多有几个拥有两个子节点的应该是1007 我擦写错了第二个求一个直线段的长度 不知道对错没有参考意义第三个是输出旋转数组 源码#include<stdio.h>#include<iostream>usingnamesp... 查看详情

拼多多一面热乎的面经!还是失算了失算了(代码片段)

拼多多一面8月14日文章目录拼多多一面8月14日第一回合自我介绍第二回合手撕代码第三回合实习项目第四回合手撕SQL语句第五回合Linux基础知识第六回合Java基础知识第七回合25匹🐎的智力题第八回合面试官部门介绍一个人四... 查看详情

拼多多技术面试算法题

面试算法题一面算法经常会遇到后端传给我的是一个拍平的树结构,将这样的结构,转为树结构,可以用于类似cascader例:输入:constdata=[{parent:3,id:4,value:4,},{parent:null,id:1,value:1,},{parent:1,id:2,value:2,},{parent:1,id:3,value:3,}];输出:[{id:1,val... 查看详情

前端2018届校招笔试面经百度,阿里,腾讯,阿里文娱,携程,美团,拼多多

百度1.块级元素和行内元素的区别和举例2.HTML5的新特性3.清除浮动的方法4.BFC清除浮动的原理5.盒子模型6.标准模式和兼容模式7.闭包的定义8.原型链和作用域链9.作用域链和闭包的区别10.Object的原型对象是什么11.怎么判断一个属性... 查看详情

拼多多面试题——算法实习生

目录面试案例1一面二面hr面面试案例2一面二面面试案例1一面1.首先自我介绍2.面试 查看详情

秋招面试我去了拼多多,直接被问jvm&gc底层原理和算法,我吊打面试官(代码片段)

JVM常用参数设置积累#堆的初始值,默认物理内存的1/64-Xms:#堆的最大值,默认物理内存的1/4-Xmx:#年轻代大小「在整个堆内存大小确定的情况下,增大年轻代将会减小年老代,反之亦然。此值关系到JVM垃圾回收,... 查看详情

互联网公司薪酬加班排名!拼多多实至名归加班夺魁,字节薪酬未入top3(代码片段)

...的职级体系,我们以初级,中级,高级和资深工程师来统计薪酬。为了保证一定的准确性,一些公司的职级因为提交的薪酬过少,因此不被计入排行中。在内部测试时,很多朋友质疑 查看详情

趣味字母卡片-拼多多笔试题(代码片段)

趣味字母卡片-拼多多笔试题小明给儿子小小明买了一套英文字母卡片(总共包含52张,区分大小写),小小明把卡片丢在地上玩耍,并从中取出若干张排成一排,形成了一个卡片序列。此时,小明需要将卡片序列中的重复字母剔... 查看详情

写在2019年后的蚂蚁头条拼多多的面试总结(代码片段)

写在2019年后的蚂蚁、头条、拼多多的面试总结原文:https://github.com/rhwayfun/interview不想听我BB直接进入面试分享:准备过程蚂蚁金服面试分享拼多多面试分享字节跳动面试分享总结说起来开始进行面试是年前倒数第二周... 查看详情

[nowcoder]大整数相乘(拼多多笔试题)(代码片段)

有两个用字符串表示的非常大的大整数,算出他们的乘积,也是用字符串表示。不能用系统自带的大整数类型。 输入描述:空格分隔的两个字符串,代表输入的两个大整数输出描述:输入的乘积,用字符串表示输入例子1:7210654754... 查看详情

一个倒计时显示的毫秒数(模仿拼多多)(代码片段)

直接上干货/***毫秒倒计时成时分秒的形式*@paramms*@return*/publicstaticString[]formatSecKillTime(Longms)Integerss=1000;Integermi=ss*60;Integerhh=mi*60;Longhour=(ms)/hh;Longminute=(ms-hour*hh)/mi;Longsecond=(ms-hour*hh- 查看详情

公众号搭建淘宝京东拼多多查券平台(代码片段)

...赚钱就另外一回事了。我这里用到了淘宝联盟api权限、拼多多平台接口api、京东申请比较麻烦就没有申请,所以京东使用了第三方免费接口,各联盟账号api权限申请我就不赘述了,有疑问的话可以在下面留言,或加我微信公众号... 查看详情

[nowcoder]最大乘积(拼多多笔试题)(代码片段)

给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1) 输入描述:无序整数数组A[n]输出描述:满足条件的最大乘积输入例子1:3412输出例子1:24求三个数字的... 查看详情

电商红利消失的时代拼多多为何能够快速崛起(代码片段)

...综合电商平台的崛起。但在去年有一款电商团购APP平台拼多多却脱颖而出成为了不可多得的引起大众关注使用的现象级应用。今天我们就来就这个话题聊一聊。在看今年春晚的时候,淘宝一直在“叫嚣”着让人们打通亲情账号。... 查看详情