滴滴出行两道编程题代码

第一题只有70%,是递归导致超时
import java.util.Scanner;

public class Main {
	public static int ans = Integer.MIN_VALUE;
	public static void func(int start, int end, int next, int count, int[][] list, int listflag)
	{
		for(int i=next;i<listflag;i++)
		{
			if(list[i][0] >= start)
			{
				count++;
				func(list[i][1]+1, end, next+1, count, list, listflag);
				count--;
			}
		}
		if(count > ans)
		{
			ans = count;
		}
	}

	public static void main(String[] args) {
	 Scanner scan = new Scanner(System.in);
	 int n = scan.nextInt();
	 int[] nums = new int[n];
	 for(int i=0;i<n;i++)
	 {
		 nums[i] = scan.nextInt();
	 }
	 int[][] list = new int[n][2];
	 int listflag = 0;
	 for(int i=0;i<n;i++)
	 {
		 int temp = nums[i];
		 if(temp == 0)
		 {
			list[listflag][0] = i;
			list[listflag][1] = i;
			listflag++;
			continue;
		 }
		 for(int j=i+1;j<n;j++)
		 {
			 temp ^= nums[j];
			 if(temp == 0)
			 {
				 list[listflag][0] = i;
				 list[listflag][1] = j;
				 listflag++;
				 break;
			 }
		 }
	 }
	 /********得到最大的区间数********/
	 func(0, n-1, 0, 0, list, listflag);
	 System.out.println(ans);
	}
}
第二题丑数剑指offer原题 AC 100%

#include<stdio.h>
/*****丑数****/
/*
* 得到三个数中的最小值
*/
int getThreeMostMinFlag(int num1, int num2, int num3)
{
	int min = num1 < num2 ? num1 : num2;
	min = min < num3 ? min : num3;
	return min;
}
/*
* 得到第n个丑数
*/
int getNthUglyNumber(int n)
{
   int* uglyNums = new int[n];
   uglyNums[0] = 1;
   int nextUgly = 1;

   int multiply2 = 0;//当前由乘2得出的最大丑数
   int multiply3 = 0;//当前由乘3得出的最大丑数
   int multiply5 = 0;//当前由乘5得出的最大丑数
   while(nextUgly < n)
   {
        int min = getThreeMostMinFlag(uglyNums[multiply2]*2, uglyNums[multiply3]*3, uglyNums[multiply5]*5);
		uglyNums[nextUgly] = min;
	    while(uglyNums[multiply2]*2 <= uglyNums[nextUgly])
		{
             multiply2++;
		}
		while(uglyNums[multiply3]*3 <= uglyNums[nextUgly])
		{
             multiply3++;
		}
		while(uglyNums[multiply5]*5 <= uglyNums[nextUgly])
		{
             multiply5++;
		}
		nextUgly++;
   }
   int ugly = uglyNums[nextUgly - 1];
   delete [] uglyNums;
   return ugly;
}
int main()
{
    int n;
    scanf("%d", &n);
    int ugly = getNthUglyNumber(n);
	printf("%d", ugly);
}

全部评论
你这一个JAVA一个C++。。。很强势啊
点赞 回复 分享
发布于 2017-09-10 17:33
能去面试吗,能收到除了拒绝外的其他通知吗
点赞 回复 分享
发布于 2017-09-10 18:20

相关推荐

03-01 19:30
已编辑
南京大学 Java
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
2
分享

创作者周榜

更多
正在热议
更多
# 春招至今,你的战绩如何? #
8136次浏览 75人参与
# 你的实习产出是真实的还是包装的? #
1493次浏览 37人参与
# 米连集团26产品管培生项目 #
5341次浏览 213人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
7266次浏览 40人参与
# 简历第一个项目做什么 #
31433次浏览 319人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
186697次浏览 1118人参与
# 巨人网络春招 #
11265次浏览 223人参与
# 不考虑薪资和职业,你最想做什么工作呢? #
152171次浏览 887人参与
# 研究所笔面经互助 #
118827次浏览 577人参与
# 重来一次,我还会选择这个专业吗 #
433206次浏览 3924人参与
# 简历中的项目经历要怎么写? #
309816次浏览 4176人参与
# 面试紧张时你会有什么表现? #
30452次浏览 188人参与
# 你今年的平均薪资是多少? #
212883次浏览 1039人参与
# AI时代,哪些岗位最容易被淘汰 #
63109次浏览 773人参与
# 我的求职精神状态 #
447904次浏览 3128人参与
# 你最满意的offer薪资是哪家公司? #
76323次浏览 374人参与
# 正在春招的你,也参与了去年秋招吗? #
362991次浏览 2635人参与
# 你怎么看待AI面试 #
179654次浏览 1206人参与
# 牛客AI文生图 #
21374次浏览 237人参与
# 职能管理面试记录 #
10766次浏览 59人参与
# 网易游戏笔试 #
6420次浏览 83人参与
# 腾讯音乐求职进展汇总 #
160518次浏览 1108人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务