笔试题型:10道问答 + 10道智力题 + 2道编程

时间:共120min

1. 给定整数序列求连续子串最大和

题目描述

给定无序整数序列,求连续子串最大和,例如{-23,17,-7,11,-2,1,-34},子串为{17,-7,11},最大和为21。

时间空间限制

时间限制:1s

空间限制:32768K

输出输出描述
  • 输入描述:

输入为整数序列,数字用空格分开,如:-23 17 -7 11 -2 1 -34

  • 输出描述:

输出为子序列的最大和:21

代码(C++)
#include <iostream>
#include <vector>using namespace std;int maxSubArray(vector<int>& nums)
{int sum=nums[0];int res=nums[0];for(int i=1; i<nums.size(); i++){sum=max(sum+nums[i],nums[i]);res=max(res,sum);}return res;
}int main()
{vector<int> nums;int x;while(cin >> x)nums.push_back(x);cout << maxSubArray(nums) << endl;return 0;
}

2. 整数无序数组求第K大数

题目描述

给定无序整数序列,求其中第K大的数。例如{45, 67, 33, 21},第2大数为55。

时间空间限制

时间限制:1s

空间限制:32768K

输出输出描述
  • 输入描述:

输入第一行为整数序列,数字用空格分开,如:45 67 33 21
输入第二行一个整数K,K在数组长度范围内,如:2

  • 输出描述:

输出第K大的数,本例为第2大数:45

代码(C/C++)
  • C++实现
#include <iostream>
#include <vector>
#include <queue>
using namespace std;int findKthLargest(vector<int>& nums, int k)
{priority_queue<int> pq;for(int i=0; i<nums.size(); i++){pq.push(nums[i]);}for(int i=0; i<k-1; i++)pq.pop();return pq.top();
}int main()
{vector<int> nums;int x;while(cin>>x){nums.push_back(x);}int k=nums[nums.size()-1];nums.erase(nums.end()-1);cout<<findKthLargest(nums, k)<<endl;return 0;
}
  • C实现(由于数组长度限制,测试用例只通过60%)
#include <stdio.h>
#include <stdlib.h>#define MAX 10000int FindKthNum(int *str, int n, int K);int main()
{//数据输入int input[MAX];int i = 0;while (scanf("%d", &input[i]) != EOF && getchar() != '\n'){i++;}int K;scanf("%d", &K);//简单比较排序int res = FindKthNum(input, i, K);printf("%d", res);return 0;
}int FindKthNum(int *str, int n, int K)
{int i, j, temp;for (i = 0; i < n - 1; i++){if (K == (i + 1)){break;}for (j = i + 1; j < n; j++){if (str[j] > str[i]){temp = str[i];str[i] = str[j];str[j] = temp;}}}return str[i - 1];
}

2017.08.26

校园招聘-2017滴滴研发工程师内推笔试编程题相关推荐

  1. 2018CVTE后台研发工程师内推笔试编程题2

    使用BFS的思想,遍历所有可能的分割情况,求出最接近的数字. 代码: import java.util.*;public class Main {public static void main(Str ...

  2. OPPO 2019校园招聘C/C++开发工程师(手机方向) 笔试编程题-2018.09.10

    思路: 1. 分割字符串,提取数字 2. multimap存储 3. 遍历找到相应结果输出 #include <iostream> #include <map> #includ ...

  3. 2018滴滴校招(秋招)内推笔试编程题题解

    package 内推笔试;import java.util.Arrays; import java.util.Scanner;/*** Created by liuming on 2017/8/26. ...

  4. 【牛客网】网易2017内推笔试编程题合集(二)

    1.[*][编程题] 混合颜料 你就是一个画家!你现在想绘制一幅画,但是你现在没有足够颜色的颜料.为了让问题简单,我们用正整数表示不同颜色的颜料.你知道这幅画需要的n种颜色的颜料,你现在可以去商店购买 ...

  5. 360集团2016JAVA研发工程师内推笔试题

    360集团2016JAVA研发工程师内推笔试题 题目来源:牛客网 https://www.nowcoder.com/test/question/analytic?tid=21122281 1.执行以下 ...

  6. 好未来23届校园招聘开始了~靠谱内推

    朋友们!!好消息: 好未来2023校园招聘正式开始,我是好未来的推星官! 好未来内推链接: https://neitui-h5.zhiyinlou.com/share_list/??_dt_no_co ...

  7. 百度 2019校园招聘 计算机视觉算法研发工程师

    1, 对任意数列进行排序时,平均排序时间最短的排序算法为 A A 快速排序 B 堆排序 C 归并排序 D 插入排序 2. 下列编译方法中,属于自底向上语法分析法有哪些 CD A 递归下降分析 B 预测 ...

  8. 2014阿里巴巴校园招聘笔试题-----研发工程师

    1.一次内存访问.SSD硬盘访问和SATA硬盘随机访问的时间分别约是() A.几微秒,几毫秒.几十毫秒 B.几十纳秒,几十毫秒,几十毫秒 C.几十纳秒.几十微秒.几十毫秒 D.几微秒.几十微秒.几十毫 ...

  9. 2018拼多多内推校招编程题

    最大乘积 时间限制:1秒 空间限制:32768K 给定一个无序数组,包含正数.负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度: O(n),空间复杂度:O(1) 输入描述: 无序整数数 ...

  10. 【面经】外企德科-华为精英研发项目-笔试编程题

    微信搜索:编程笔记本.获取更多干货! 微信搜索:编程笔记本.获取更多干货! 点击上方蓝字关注我,我们一起学编程 欢迎小伙伴们分享.转载.私信.赞赏 今天来看一道"外企德科-华为精英研发项目& ...

最新文章

  1. recyclervie刷新到底部_RecyclerView底部刷新实现详解
  2. 本科阶段计算机专业的科学体系,【学习方法】一位大三本科生的计算机科学与技术学习反思录...
  3. 如何检测VC运行库是否安装
  4. 创建 VSTO 工作簿的 ClickOnce 安装包
  5. HTML5如何实现网页消息通知提醒
  6. Word 【域】学习笔记
  7. 计算机基础——4.1 数字通信入门
  8. 我的团长我的团可能的故事原现
  9. python爬虫表格table_Python基于pandas爬取网页表格数据
  10. 四阶段:第24周 微服务下Sentinel流量防控卫兵 apollo相关配置 一般有用
  11. 多端异构数据集成方案
  12. 工业过程控制领域中通信
  13. [2020/02]林深时见鹿,溪午不闻钟
  14. 用Google搜索本地硬盘
  15. 【Leetcode】Coin Change
  16. HCIP第十七天笔记
  17. 软件管理测试工具-ALM/QC
  18. 学习groupby-agg用法
  19. Java实现 LeetCode 374 猜数字大小
  20. 安川H1000变频器调试

热门文章

  1. 【难题】动态规划 NOI 162:Post Office 7624:山区建小学——找状态方程有点难 思路详细
  2. 开发工业软件需要什么人员_当我开始成为软件开发人员时,我希望知道什么
  3. 开源系统Linux主内核源代码存放在,Linux 下查看开源软件或操作系统的源代码(转)...
  4. 定位系统可以触电5G了吗?
  5. vue手写动画效果和animate库的使用
  6. jmeter的教学视频
  7. 转 微架构设计 微博计数器的设计
  8. 基于单片机的高精度厚度测量系统设计
  9. red blooded woman
  10. 【计算机网络】到底IPv4有多少个地址、地址总数