flag 60牛牛收集了每种工作的难度和报酬。牛牛选工作的标准是在难度不超过自身能力值的情况下,牛牛选择报酬最高的工作。在牛牛选定了自己的工作后,牛牛的小伙伴们来找牛牛帮忙选工作,
为了找到自己满意的工作,牛牛收集了每种工作的难度和报酬。牛牛选工作的标准是在难度不超过自身能力值的情况下,牛牛选择报酬最高的工作。在牛牛选定了自己的工作后,牛牛的小伙伴们来找牛牛帮忙选工作,牛牛依然使用自己的标准来帮助小伙伴们。牛牛的小伙伴太多了,于是他只好把这个任务交给了你。
每个输入包含一个测试用例。 每个测试用例的第一行包含两个正整数,分别表示工作的数量N(N<=100000)和小伙伴的数量M(M<=100000)。 接下来的N行每行包含两个正整数,分别表示该项工作的难度Di(Di<=1000000000)和报酬Pi(Pi<=1000000000)。 接下来的一行包含M个正整数,分别表示M个小伙伴的能力值Ai(Ai<=1000000000)。 保证不存在两项工作的报酬相同。
# include <stdio.h>
# include <malloc.h>
typedef struct node
{
long di;
long pi;
}Node,*Pnode;
void sort(Pnode work,int size);
void find(Pnode work,long* frien,int M,int N);
int main()
{
long N,M;
scanf("%ld%ld",&N,&M);
Pnode work=(Pnode)malloc(sizeof(Node)*N);
for(int i=0;i<N;i++)
scanf("%ld%ld",&work[i].di,&work[i].pi);
long* frien=(long*)malloc(sizeof(long)*M);
for(int j=0;j<M;j++)
scanf("%ld",&frien[j]);
sort(work,N);
find(work,frien,M,N);
for(int i=0;i<M;i++)
printf("%ld ",frien[i]);
return 0;
}
void sort(Pnode work,int size)
{
Node t;
bool change=true;
for(int i=0;i<size && change;i++)
{
change=false;
for(int j=size-1;j>i;j--)
if(work[j].di<work[i].di)
{
t=work[j];
work[j]=work[i];
work[i]=t;
change=true;
}
}
}
void find(Pnode work,long* frien,int M,int N)
{
long val=-1;
for(int i=0;i<M;i++)
{
for(int j=0;j<N;j++)
if(frien[i]>=work[j].di )
{
if(work[j].pi>val)
val=work[j].pi;
}
frien[i]=val;
//printf("val=%ld ",val);
val=-1;
}
}
flag 60牛牛收集了每种工作的难度和报酬。牛牛选工作的标准是在难度不超过自身能力值的情况下,牛牛选择报酬最高的工作。在牛牛选定了自己的工作后,牛牛的小伙伴们来找牛牛帮忙选工作,相关推荐
- 什么情况下选择linux,在哪种情况下建议选择BSD系统而不是Linux?
我一直发现BSD更直观.在BSD中有一些不同于Linux的哲学.例如,Linux更喜欢GNU命令,而BSD选择传统的BSD命令(类似但通常有不同的选项)或新写入的命令,当没有其他可用的时候,它们会回到 ...
- 找一份好工作只需要这几招
[写在前面]找一份好工作,并没有你想象的那么难.今天教你找一份好工作需要的几招.有需要的朋友可以学习一下. 我有个学弟,还很年轻,工作勤奋努力,思想积极向上,除了长得没我帅以外,其他都比我强,只是流年 ...
- java在gc正常工作的情况下_Java GC的工作原理
一 ,GC的概要: JVM主要管理两种类型内存:堆和非堆,堆内存(Heap Memory)是在 Java 虚拟机启动时创建,非堆内存(Non-heap Memory)是在JVM堆之外的内存. 简单来说 ...
- java在gc正常工作的情况下_最新JVM面试题小结,程序猿直呼内行
这篇文章主要介绍了JVM面试题小结(2020最新版),觉得挺不错的,现在分享给大家,也给大家做个参考. Java内存区域 说一下 JVM 的主要组成部分及其作用? JVM包含两个子系统和两个组件,两个 ...
- brook客户端android,Android端线上NativeCrash收集的两种方法(一)
Android端crash可分为Java层crash和Native crash,我们通常说的crash一般指的是Java层crash,Native crash主要指C/C++代码(其在Android工 ...
- ZT-我们为什么找不到好工作?(一个大学生的反思)
我们为什么找不到好工作 今年大学毕业生将有6层找不到工作.这是教育部的统计,只能说往少了写.听说一般是7层-- 大学生的悲剧.我们读了10多年书,辛辛苦苦换来的文凭成了废纸.我们怎么办?为什么被评为天 ...
- 如何在工作繁重、睡眠较少的情况下保持旺盛精力?
作者:陈炬 链接:https://www.zhihu.com/question/23177623/answer/47785761 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...
- 什么情况下你的工作最为成功_如何在没有工作经验的情况下获得技术工作
什么情况下你的工作最为成功 by Anthony Sistilli 安东尼·西斯蒂里(Anthony Sistilli) 如何在没有工作经验的情况下获得技术工作 (How to get a tech ...
- 重磅!Python又第一了!网友:为什么找不到好工作?真相让人脸红…
根据第 19 届 KDnuggets调查显示,Python 成数据分析.数据科学与机器学习的第一大语言. 图片来源于第 19 届 KDnuggets软件大调查 Python 在机器学习中的地位日益扩大 ...
最新文章
- 用Spring Web Flow和Terracotta搭建Web应用
- wordpress 分类使用不同的模版
- springboot actuator_Spring Boot 服务监控,健康检查,线程信息,JVM堆信息,指标收集,运行情况监控...
- c#连接oracle11,C#连接远程oracle11g数据库
- 利剑无意之JAVA面试题(一)
- Python核心编程第四章
- [css] 举例说明CSS特性检测的方式有哪些?
- 【POJ - 1724 】ROADS (带限制的最短路 或 dfs 或 A*算法,双权值)
- 程序员》推荐C++ 图书三人谈
- automake的使用1
- Spring AOP原理分析(一)-- AOP相关概念
- 曲率曲线JAVA_DEM曲率计算
- STVD环境下开发STM8,如何查看工程占用的Flash、EEPROM、RAM的情况
- 【邢不行|量化小讲堂系列05-Python量化入门】计算创业板平均市盈率
- 计算机IPv4升级到IPv6的技术,IPv4到IPv6的变化
- [Mac] OSX 快捷键组合 (完整版)
- 微信小程序之在线任务发布与接单平台(2)
- matlab set函数
- 大一计算机基础试题答案,计算机基础知识试题及答案-(1).doc
- SCORM标准及支持SCORM标准学习平台的设计
热门文章
- 吉林大学[离散数学(68集)AVI] 下载地址 百度云盘
- oracle sqlloader 的简单使用
- 教育知识与能力——简答题30题
- 固定资产拆分比例怎么计算_证券市场上的股票拆分,配股和除权、除息是什么,除权、除息如何计算?丕余周报...
- 数字信号处理实验matlab版答案刘舒帆,数字信号处理实验(MATLAB版) 刘舒帆,费诺,陆辉 西安电子科技大学出版社 9787560620060...
- 【IDEA】- IDEA导入 mysql驱动包的时候 编译时可以找到驱动包 , 但是运行时无法找到
- csgo的demo怎么录屏_CSGO DEMO录制、下载、保存文件夹路径、回放
- windows小技巧1——路径太长导致文件无法删除
- can通道采样频率_CAN总线CAN波特率计算方式
- delphi通过php连接数据库,delphi2010中使用sqlitesimpledelphi连接sqlite数据库并解决中...