码迷,mamicode.com
首页 > 其他好文 > 详细

2019腾讯春招正式批笔试

时间:2019-04-06 18:51:05      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:csdn   pac   https   blank   for   while   第一题   int   tps   

第一题:

技术图片

 

技术图片

题解:

 贪心算法,题解参考

 1 package testTecent;
 2 
 3 import java.util.Arrays;
 4 import java.util.Scanner;
 5 
 6 public class test1 {
 7     public static void main(String[] args) {
 8         Scanner in = new Scanner(System.in);
 9         while (in.hasNextInt()) {
10 //            先读入一个整数n,再接着读入n个整数存入数组
11             int sum = 0;
12             int ans = 0;
13             int i;
14 
15             int m = in.nextInt();
16             int n = in.nextInt();
17             int[] arr = new int[n];
18             for (i = 0; i < n; i++)
19                 arr[i] = in.nextInt();
20 
21             Arrays.sort(arr);
22             if (arr[0] != 1) {
23                 System.out.println(-1);
24                 return;
25             }
26             while (true) {
27                 if (sum >= m) {
28                     System.out.println(ans);
29                     return;
30                 }
31 
32                 for (i = n-1; i >= 0; i--) {
33                     if (arr[i] <= sum + 1) {
34                         sum += arr[i];
35                         ans++;
36                         break;
37                     }
38                 }
39             }
40         }
41     }
42 }

 

第二题:

 技术图片

 

 技术图片

题解:

只需要统计0的个数和1的个数,两者作差即可。因为到最后不可能同时剩下0和1,只能剩下两者中的一个。

第三题:

技术图片

技术图片

技术图片

 

2019腾讯春招正式批笔试

标签:csdn   pac   https   blank   for   while   第一题   int   tps   

原文地址:https://www.cnblogs.com/greatLong/p/10662190.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!