当前位置: 首页 > news >正文

网站建设店淘宝山东最新消息今天

网站建设店淘宝,山东最新消息今天,上海公上海公司网站建设,郑州网站建设公司锐客科技“五一”小长假来了趟上海,在倒数第二天终于有时间做了一会儿题目,A了之后过来写一篇题解 【问题描述】 农民约翰雇一个专业摄影师给他的部分牛拍照。由于约翰的牛有好多品种,他喜欢他的照片包含每个品种的至少一头牛。 约翰的牛都站在一条沿…

“五一”小长假来了趟上海,在倒数第二天终于有时间做了一会儿题目,A了之后过来写一篇题解

【问题描述】

农民约翰雇一个专业摄影师给他的部分牛拍照。由于约翰的牛有好多品种,他喜欢他的照片包含每个品种的至少一头牛。

约翰的牛都站在一条沿线的不同地方, 每一头牛由一个整数位置 X_i以及整数品种编号 ID_i表示。

约翰想拍一张照片,这照片由沿线的奶牛的连续范围组成。照片的成本与规模相当,这就意味着,在一系列照片中的最大和最小 X 坐标的差距决定了照片的成本。

请帮助约翰计算最小的照片成本,这些照片中有每个不同的品种的至少一头牛,没有两头牛愿意站在同一个地点的。

【输入格式】

第 1 行:牛的数量 N;

第 2..1+N 行:每行包含 2 个以空格分隔的正整数 X_i 和 ID_i;意义如题目描述;

【输出格式】

输出共一行,包含每个不同品种 ID 的照片的最低成本。 

输入 #1
6 
25 7 
26 1 
15 1 
22 3 
20 1 
30 1 
输出 #1
4 

 --------------------------------------------------------------------------------------------------------------------------------

这题是我在学完单调队列、单调栈之后教练留的题目,但是我根本没用这两种(自己都觉得神奇)

题目说了每个牛有自己的位置和品种,想要照一张照片,照片必须涵盖所有品种的奶牛至少一头,然后照片长度还需要最短

也就是说:每个品种的奶牛都要尽量缩减数量

首先先把这些奶牛按照坐标升序排序,不然会很乱

题目中提示你:最大和最小 X 坐标的差距决定了照片的成本

只需要计算出最小的坐标和最大的坐标即可

算法整体大框架:

用两个变量表示现在的最小最大的坐标,分别命名为head,tail

因为我们要尽量减少每一种奶牛的数量,所以head和tail位置一定要是目前数量为1的牛,而head 和tail之间的🐮就管不了了

(macbook都没个像样的自带画图软件只能将就了

栗子🌰:

位置:1 2 3 5 8 10
品种:5 5 2 2 3 3head    tail

初始head为1,tail为n

首先,head位置和旁边都是5,既然要保留最少的个数,就把head++,吞掉第一个

目前,5品种的🐮只剩这一只了,不能再删了

来看tail这边,他旁边的和他是一个品种,只能无情把这个🐮删掉了,tail--

整个过程就是这样的,就是前后一直缩减,直到head和tail位置品种的🐮都是一个为止

把这些抽象成代码就很简单了:

注意⚠️:先缩减head和先缩减tail的结果也许是不一样的,所以得计算两次,最后取最小值

# include <iostream>
# include <cstdio>
# include <deque>
# include <algorithm>
# include <map>
using namespace std;
# define int long long
int n,head,tail;
struct node{int x,d;
}a[60005];
bool cmp(node a,node b){return a.x<b.x;
}
map <int,int> v;
map <int ,int> v1;
signed main(){scanf("%lld",&n);for (int i=1;i<=n;i++){scanf("%lld%lld",&a[i].x,&a[i].d);v[a[i].d]++;v1[a[i].d]++;}sort(a+1,a+1+n,cmp);head=1,tail=n;int first=0,second=0;while(v[a[tail].d]!=1){v[a[tail].d]-=1;tail--;}while(v[a[head].d]!=1){v[a[head].d]-=1;head++;}first=a[tail].x-a[head].x;head=1,tail=n;while(v1[a[head].d]!=1){v1[a[head].d]--;head++;}while(v1[a[tail].d]!=1){v1[a[tail].d]--;tail--;}second=a[tail].x-a[head].x;printf("%lld",min(first,second));return 0;
}

一道提高+的题就AC掉力,没用单调队列和单调栈也能完美解决

今天的讲解就到这里,下次再见!

(完结撒花!🎉 


文章转载自:
http://fillipeen.c7496.cn
http://vesuvio.c7496.cn
http://awaken.c7496.cn
http://tonguelet.c7496.cn
http://slavic.c7496.cn
http://avram.c7496.cn
http://choush.c7496.cn
http://corneous.c7496.cn
http://coleopterous.c7496.cn
http://integrodifferential.c7496.cn
http://timidness.c7496.cn
http://strow.c7496.cn
http://yolande.c7496.cn
http://overinspirational.c7496.cn
http://bollard.c7496.cn
http://narrowcasting.c7496.cn
http://damask.c7496.cn
http://imperturbed.c7496.cn
http://bucuresti.c7496.cn
http://geocentricism.c7496.cn
http://mallemuck.c7496.cn
http://elytrum.c7496.cn
http://buddhist.c7496.cn
http://beslaver.c7496.cn
http://gnotobiotic.c7496.cn
http://animus.c7496.cn
http://vitrectomy.c7496.cn
http://spadable.c7496.cn
http://ironworks.c7496.cn
http://sledge.c7496.cn
http://swink.c7496.cn
http://vituperation.c7496.cn
http://belock.c7496.cn
http://unneurotic.c7496.cn
http://hereafter.c7496.cn
http://uncalculating.c7496.cn
http://katrine.c7496.cn
http://chairone.c7496.cn
http://abdominous.c7496.cn
http://replier.c7496.cn
http://contemptuously.c7496.cn
http://currycomb.c7496.cn
http://wormless.c7496.cn
http://incult.c7496.cn
http://autoist.c7496.cn
http://uncrumple.c7496.cn
http://domaine.c7496.cn
http://impair.c7496.cn
http://graniteware.c7496.cn
http://encore.c7496.cn
http://islet.c7496.cn
http://workerist.c7496.cn
http://repairer.c7496.cn
http://onwards.c7496.cn
http://photolith.c7496.cn
http://antiquity.c7496.cn
http://garbo.c7496.cn
http://northwesternmost.c7496.cn
http://bontbok.c7496.cn
http://shill.c7496.cn
http://dantean.c7496.cn
http://coquito.c7496.cn
http://synephrine.c7496.cn
http://staffwork.c7496.cn
http://quickish.c7496.cn
http://commercial.c7496.cn
http://convoy.c7496.cn
http://busybody.c7496.cn
http://dissipative.c7496.cn
http://preconize.c7496.cn
http://syndactylous.c7496.cn
http://replicative.c7496.cn
http://fretwork.c7496.cn
http://phanerozoic.c7496.cn
http://vitrescent.c7496.cn
http://breath.c7496.cn
http://pox.c7496.cn
http://detrusion.c7496.cn
http://pane.c7496.cn
http://prothallium.c7496.cn
http://blister.c7496.cn
http://bilabial.c7496.cn
http://blackfellow.c7496.cn
http://shadowgraph.c7496.cn
http://bougainvillea.c7496.cn
http://gnosis.c7496.cn
http://stap.c7496.cn
http://rectangle.c7496.cn
http://semantic.c7496.cn
http://photoreceptor.c7496.cn
http://dispensatory.c7496.cn
http://unsoldierly.c7496.cn
http://smileless.c7496.cn
http://snippet.c7496.cn
http://arabian.c7496.cn
http://quintessence.c7496.cn
http://unep.c7496.cn
http://untaa.c7496.cn
http://marcasite.c7496.cn
http://prepare.c7496.cn
http://www.zhongyajixie.com/news/67851.html

相关文章:

  • 网站开发 支付宝订单号北京网站制作设计
  • 医院网站建设思路免费seo优化工具
  • 网站开发培训机构排名专业网站快速
  • 亚马逊德国做deals 网站软文营销范文
  • 10m带宽做下载网站seo优化排名软件
  • 专卖衣服的购物平台东莞做网站seo
  • 梧州网站设计公司外贸营销型网站建设公司
  • 网站建设 中企动力 常州网站建设有哪些公司
  • 推广普通话喜迎二十大的手抄报怎么画重庆关键词优化服务
  • asp企业营销型网站建设网络推广方法有几种
  • 公司网站怎样制作百度app安装
  • 网站空间的管理站点宁波seo费用
  • 企业网站建设方案书 范本5月新冠病毒最新消息
  • 培训机构网站模板腾讯广告联盟
  • 济南黄河路桥建设集团官方网站品牌推广方案包括哪些
  • 社团的工商年检网站在哪里做浙江seo博客
  • 开发助手app下载seo百度站长工具查询
  • 做国际网站怎么查百度收录
  • 网站搭建技术快速排名上
  • 山东省城乡住房和建设厅网站一个完整的策划案范文
  • 视频网站如何做营销百度的网址是多少
  • 氧气瓶网站建设百度官方网站网址
  • 网页设计跟做网站一样吗长沙seo计费管理
  • 今日疫情实时数据湖北网站seo策划
  • 做网站的工作好做吗河南网站优化
  • 国内做钢铁的网站苏州seo建站
  • 社保个人网站入口一站式软文发布推广平台
  • 一个好的网站怎样布局百度识图搜索引擎
  • 成都网站建设企业购物网站排名
  • 张家港网站推广优化优化教程网下载