拼多多笔试5.26

4道编程题,双机位

人麻了

1.n张卡片,每轮发一张卡片,每张卡片数值为ai,有一个正整数m,要求玩家凑齐1到m内所有正整数时,可用这m张卡片兑换一次奖励。现给出n张卡片和正整数m,问玩家可以在第几轮获得奖励,若一次奖励都没有则输出"Impossible"。有t组数据。

AC

思路:每轮存入ai时,同时判断长度为m的辅助数组内的每个值是否全大于0,若大于0说明本轮可以兑换奖励,将辅助数字所有元素--表示消耗掉了这m张卡片

麻烦点:输出格式,对于每一轮的结果需要占一行,本鼠忘了\n的用法,试了好好几次总算正确了

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNextInt()) { 
        	int t = in.nextInt();
        	for(int i = 0;i<t;i++) {
            	int cur = 0;
        		int n = in.nextInt();
                int m = in.nextInt();
                int arr[] = new int[n];
                int ar[] = new int[m];
                for(int j = 0;j<n;j++) {
                	arr[j] = in.nextInt();
                	if(arr[j]>0 && arr[j]<=m)ar[--arr[j]]++;
                	int flag = 1;
                	for(int k = 0;k<m;k++) {
                		if(ar[k]== 0) {
                			flag = 0;
                			break;
                		}
                	}
                	if(flag == 1) {
            			cur = 1;
                		for(int p = 0;p<m;p++) {
                			ar[p]--;
                		}
                		int res = j+1;
            			System.out.print(res+" ");	
                	}
                }
                if(cur == 1)System.out.print("\n");
                else System.out.println("Impossible");
        	}
            
        }
    }
}

2.长度n的01串,每次操作选择i表示会将除了位置i和位置i+1外的数字反转,若i为n,则表示除n外都反转。

问在进行m次操作后,使该01串表达的值最小,这个01串是什么。有t组数据。

...

3.n个正整数,可做若干个操作,每次操作选择任意一个数,使其++。

现有q次询问,在第i次询问,问最少要多少次操作(操作可以不做)使第k大的数=x。

若无论多少次操作都无法实现输出"Impossible"。每次询问都针对原始数组。第k大表示降序排序后排在第k个的那个数。

...

4.存储容量n,最多存n条数据。

写模块每次固定写入p条数据,当剩余不足p时,无法写。

读模块每次固定取出q条数据,并释放相应存储,当已有元素个数小于q时,无法读。

当剩余<p,已有<q时,显然死锁。

给定n,p,q,问是否会出现死锁。有t组数据。

...

欢迎大家讨论,感觉变换操作题比例很大,苦手呀

#我的实习求职记录#
全部评论
有c++的吗?😅vector的push_back段错误了,兄弟人都麻了
1
送花
回复 分享
发布于 05-26 21:52 湖南
佬太强了,第一题一样的思路就是ac不出来
1
送花
回复 分享
发布于 05-26 21:54 北京
现代汽车中国前瞻数字研发中心
校招火热招聘中
官网直投
ac了第一题,第三题通过用例12.5%,,2、4题没有做,今天收到面试邀请了
1
送花
回复 分享
发布于 05-27 20:10 湖南
佬们写出来了几道题,我就写出来了第一题不知道能不能进面呐
点赞
送花
回复 分享
发布于 05-26 21:56 浙江
楼主你第一题复杂度应该跑不过第一题吧
点赞
送花
回复 分享
发布于 05-26 22:38 英国
a了134题,第二题没啥思路直接交了,有人有思路吗,找到了一些性质,感觉应该不会很复杂,类似贪心
点赞
1
回复 分享
发布于 05-26 23:19 广东
只写出来了1和3,其他的没思路😰
点赞
送花
回复 分享
发布于 05-27 09:31 上海
这是秋招还是暑期?秋招的话这也太早了吧
点赞
送花
回复 分享
发布于 05-27 11:52 江苏
第二题不就是逆向思维嘛,先整体反转m次,然后贪心从左往右反转最高位的1,直到m次用完
点赞
送花
回复 分享
发布于 05-28 10:42 安徽

相关推荐

4 15 评论
分享
牛客网
牛客企业服务