题解:AT_abc382_c [ABC382C] Kaiten Sushi
题目传送门
思路
首先看一下数据范围。
- \(1 \leq N, M \leq 2 \times 10^5\)
- \(1 \leq A_i, B_i \leq 2 \times 10^5\)
这么大的数据范围肯定不能直接写二重循环暴力。
考虑一下,应为它是从每个人面前顺序经过的。那我们就可以按照顺序,依次枚举这 \(N\) 个人。
首先记录这些食物对应的序号,再的按照美味度从小到大排序。
依次枚举这 \(N\) 个人,只要发现一个不小于他的品味值的食物,就给这个食物打上标记,同时指针往前移一位。
如果所有的食物都已经被打上了标记,就提前跳出循环。
否则到最后的时候,就按照标记输出,如果这个食物没有被打上标记,就输出 -1。
代码
#include<bits/stdc++.h>
using namespace std;
struct no
{
int x,y;
}h[1000000];
int cmp(no q,no w)
{
return q.x<w.x;
}
int hh[1000000];
int a[1000000];
int main()
{
ios::sync_with_stdio(false);
cin.tie(),cout.tie();
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++)
cin>>a[i];
for(int i=1;i<=m;i++)
{
cin>>h[i].x;
h[i].y=i;
}
sort(h+1,h+m+1,cmp);
int x=m+1;
// for(int i=1;i<=m;i++)
// cout<<h[i].x<<" ";
// cout<<endl;
// for(int i=1;i<=m;i++)
// cout<<h[i].y<<" ";
for(int i=1;i<=n;i++)
{
if(x==0)
break;
while(1)
{
x--;
if(h[x].x>=a[i])
{
hh[h[x].y]=i;
}
else
{
x++;
break;
}
}
}
for(int i=1;i<=m;i++)
{
if(hh[i]==0)
cout<<-1;
else
cout<<hh[i];
cout<<endl;
}
}
题解:AT_abc382_c [ABC382C] Kaiten Sushi的更多相关文章
- J - Sushi 题解(期望dp)
题目链接 题目大意 给你n个盘子,每个盘子可能有1,2,3个披萨 你选到每个盘子的概率是一样的. 你如果选到空的盘子什么都不做 如果你选到有披萨的盘子则吃掉一个披萨 求吃完所有披萨的期望 题目思路 设 ...
- AtCoder Regular Contest 096 D - Static Sushi(线性dp)
Problem Statement "Teishi-zushi", a Japanese restaurant, is a plain restaurant with only o ...
- Codeforces Round #545 (Div. 2) 题解
题目链接 A. Sushi for Two 题意 在一个 01 序列中找出长为偶数的连续的一段使得它前一半和后一半内部分别相同,而前一半和后一半不同. \(2\le n\le 100\ 000\) 题 ...
- Codeforces1138-A(D题)Sushi for Two
Arkady invited Anna for a dinner to a sushi restaurant. The restaurant is a bit unusual: it offers n ...
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- BZOJ-2561-最小生成树 题解(最小割)
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
- 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解
题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...
- 2016ACM青岛区域赛题解
A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Jav ...
随机推荐
- 为什么在EffectiveJava中建议用EnumSet替代位字段,以及使用EnumMap替换序数索引
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,在第37条中建议 用EnumMap替换序数索引,为什么? EnumSet 在EffectiveJava中的第 36条中 ...
- Angular 学习笔记 work with zip (压缩文件格式)
最近在做批量创建. 上回说到了 读写 excel, 那么就可以通过 excel 的资料来创建资料了.但是资料经常会有图片,而 excel 里面放图片有点不太好. 于是就想 upload excel 的 ...
- ASP.NET Core C# 反射 & 表达式树 (第一篇)
前言 以前就写过几篇关于反射和表达式树的学习笔记, 但是写的很乱. 最近常用到反射和表达式树, 所以特别写一篇做一个整理吧. 泛型和反射 表达式树 学习笔记 c# 常用反射和表达式树整理 反射在项目中 ...
- Windows 调试工具课程
本文是我在集团内部上的课程记录而成的博客内容.在本次课程里面将和大家介绍一些在 Windows 上常用的调试工具,以及调查问题的常见套路.适合于伙伴们入门 Windows 调试 本文以下内容是采用原本 ...
- redisson内存泄漏问题排查
问题描述 最近生产有个服务突然出现频繁告警,接口P99响应时间变长,运维同学观察到相应的pod cpu飙升,内存占用很高. cpu升高问题排查是老生常谈的话题了,一般可以使用top -p pid -H ...
- Docker安装(安装Docker-CE)(三)
现版本安装Docker已经非常简单了,有很多种方式,而自17年开始,Docker分为Docker-CE(社区版).Docker-EE(企业版),另外Docker-IO是较早的版本,通常用的都是Dock ...
- ASP.NET Core OData 9的发布,放弃 .NET Framework
Microsoft 于 2024 年 8 月 30 日宣布推出 ASP.NET Core OData 9 包. 这个新包将ASP.NET Core与.NET 8 OData库保持一致,改变了OData ...
- 将python文件编译成exe文件
第一种方法:我们只会生成一个exe文件,因为所有的库文件他都会包含在这个exe文件中 1.安装:pyinstaller pip install pyinstaller 2.使用如下命令编译 pyins ...
- Linux的Terminal调用不出来,一直转圈圈
后来发现是环境变量的问题 [oracle@ora19rac01 ~]$ cat .bash_profile # .bash_profile # Get the aliases and function ...
- 一次生产 KubeSphere 日志无法正常采集事件解决记录
作者:宇轩辞白,运维研发工程师,目前专注于云原生.Kubernetes.容器.Linux.运维自动化等领域. 前言 2023 年 11 月 7 号下午,研发同事反馈,项目线上日志平台某个服务无法查看近 ...