9.7贝壳笔试算法第三题搬砖AC代码分享

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

#define maxn 1005

int w[maxn];
int mark[maxn]; //记录0-1000数,每个数在w中对应的最近的数 

int main()
{
	int T;
	scanf("%d", &T);
	while(T--) {
		int n;
		scanf("%d", &n);
		for(int i=0; i<n; i++) scanf("%d", &w[i]);
		int minNum = maxn;
		map<int,int> hashw; //记录相同数的最小下标
		for(int i=1; i<=n; i++) {
			if(hashw.find(w[i-1]) == hashw.end()) hashw[w[i-1]] = i;
			minNum = min(minNum, w[i-1]);
		}

		int tmp = 0;
		for(int i=0; i<=1000; i++) {
			if(hashw.find(i) != hashw.end()) {
				mark[i] = i;
				tmp = i;
			} else {
				mark[i] = tmp;
			}
		}
		
		
		int q;
		scanf("%d", &q);
		int x,y,z;
		while(q--) {
			scanf("%d%d%d", &x, &y, &z);
			int work = x*y*z;

			if(work < minNum) printf("-1\n");
			else {
				printf("%d %d\n", hashw[mark[work]], mark[work]);
			}
		}
	}
    return 0;
}

#笔试题目##贝壳找房#
全部评论
可能是因为没用scanf吧 枯了
点赞 回复 分享
发布于 2020-09-07 20:11

相关推荐

翱翔龙骑:耗材的幻想
点赞 评论 收藏
分享
简历求拷打,海投简历发过去就已读不回了求大佬们指点
程序员牛肉:基本不能了,估计你得放弃秋招,九月份找实习之后明年的春招开始正式找工作
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务