ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【网易面试题】二人等价值均分一堆物品后丢弃的最小价值

2020-08-18 05:00:37  阅读:370  来源: 互联网

标签:p2 index 面试题 p1 dele int res 均分 价值



title: 【网易面试题】二人等价值均分一堆物品后丢弃的最小价值
date: 2020-08-17
tags:

  • 算法
  • 面试

categories:

  • 技术

参加了2021届网易互联网的秋招内推,分到的是网易云音乐的C++开发(我记得我没有投这么吊的啊。。。)

顺利成章第一批进笔试。

笔试在牛客网,开始之后发卷,上来就是4道算法题,100分钟,其他什么都没有,也太直白了吧。

因为有刷过题,感觉没那么慌了。

另外客观来说,题目其实算是比较放水了,虽然因为我太菜没有看最后一题,但是真的谈不上很难。

第一题,可以在一个字符串右边添加任意次任意字符,求把一个字符串改成回文串后的最短的结果。稍微想想就秒了。

第二题,懵逼了,没做出来,先看第三题。

第三题,一堆人排队买票,此时早上八点整,第i个人单独买票所花的时间记为a[i]秒;或者第i个人顺便给第i+1个人捎带一张(即一起买)所花时间为b[i]秒。求最快所有人买完票后是几点。典型的DP,也是试了下就做出来了,但是问题在于要按标准的时间格式输出此时的时间,hh:mm:ss am/pm。这就很蛋疼,我不会C++库函数的时间格式输出,我这时时间不够了,只能手动算。然后急忙中还把数据集的范围求错了,其实买票可能跨天,但是我算出来以为不会跨天(话说排队买票买超过24小时就离谱)。。。最后数据集只能过65%。觉得自己明明对了,就是过不掉,后来才发现是输出写错了,太蛋疼了。

第二题是重点。题目是,给一个数组,代表一堆物品的价值。现要把这些物品等价值地分给两个人,不能均分的部分就丢弃。求丢弃的物品的最小价值和。

我直接懵了,我的思路被leetcode 的array partition萦绕住了,就是尽可能均分数组的结果,但就是想不出办法从中分离出丢弃的物品。。。除非用超暴力解法,求组合,然后一个个试,但是这样代码会很多,而且不好写。然后时间到交卷了。

突然有一天洗澡时想到了,这个暴力解法递归解不就好了吗。。。

#include <bits/stdc++.h>
using namespace std;

void recur(vector<int> &v, int p1, int p2, int dele, int index, int &res) {
    if (index == v.size()) {
        if (p1 == p2) res = min(res, dele);
        return;
    }
    recur(v, p1 + v[index], p2, dele, index + 1, res);
    recur(v, p1, p2 + v[index], dele, index + 1, res);
    recur(v, p1, p2, dele + v[index], index + 1, res);
}
int main() {
    vector<int> v{1, 2, 3};
    int res = accumulate(v.begin(), v.end(), 0);
    recur(v, 0, 0, 0, 0, res);
    cout << res << endl;
    return 0;
}

太直白了,都不需要我解释了,这顶多算leetcode的medium,没做出来,丢人。

标签:p2,index,面试题,p1,dele,int,res,均分,价值
来源: https://www.cnblogs.com/mingyunyuansu/p/13521233.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有