【ZBH選講·拍照】

【問題描述】
假設這是一個二次元。
LYK召集了n個小伙伴一起來拍照。他們分別有自己的身高Hi和寬度Wi。
為了放下這個照片并且每個小伙伴都完整的露出來,必須需要一個寬度為ΣWi,長度為max{Hi}的相框。(因為不能疊羅漢)。
LYK為了節省相框的空間,它有了絕妙的idea,讓部分人躺著!一個人躺著相當于是身高變成了Wi,寬度變成了Hi。但是很多人躺著不好看,于是LYK規定最多只有n/2個人躺著。(也就是說當n=3時最多只有1個人躺著,當n=4時最多只有2個人躺著)
LYK現在想問你,當其中部分人躺著后,相框的面積最少是多少。
【輸入格式】
第一行一個數n。
接下來n行,每行兩個數分別是Wi,Hi。
【輸出格式】
你需要輸出這個相框的面積最少是多少。
【樣例輸入】
3
3 1
2 2
4 3
【樣例輸出】
27
【樣例解釋】
如果沒人躺過來,需要27的面積。
我們只要讓第1個人躺過來,就只需要21的面積!
【數據規模與約定】
對于30%的數據n<=10。
對于60%的數據n<=1000,Wi,Hi<=10。
對于100%的數據1<=n,Wi,Hi<=1000。

?

題解:
???? ①先去掉一個限制,方法是枚舉最大高度H,貪心分類討論:

????????? ·貪心策略:在高度不超過限制的情況下,使寬度增加盡可能少。

????????? 設h,w分別為當前人的高和寬,那么:

????????? (1)h>H:

??????????????? w>H:躺著還是會超出高度,不合法直接跳出。
??????????????? w<=H:躺著

????????? (2)h<=H:

???????????????? h>=w:站著(這樣寬度增加得少)

??????????????? h<w:躺著,但是由于躺的人數有限制,所以有一部分還是要站著。

?????????????? 因此特殊處理這種需要決策的情況(在h<=H&&h<w的這種情況下):

??????????????????? 問題:這些人站著躺著的高度都不會超出H,因此考慮怎樣選擇使得總寬度最少。

??????????????????? 解決方案:先讓每個人都站著,此時總寬度設為W,然后再讓n/2個人躺下:

???????????????????????? 每個人躺下,那么這個人對W將加上值(h-w) (意思是將寬換成高的長),

???????????????????????? 那么我們希望(h-w)盡量小,因此從小到大排序然后取前n/2個躺著就可以了。

#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <algorithm>
#include <string>
#include <cstring>
#include <vector>
#include <set>
#include <map>
using namespace std;
set<int> ::iterator sit;
int ans,sum,p[1005],i,a[1005],b[1005],cnt,CNT,j,ANS,n;
int cmp(int i,int j) {return i>j;}
bool FLAG;
int main()
{ANS=1000000000;scanf("%d",&n);for (i=1; i<=n; i++)scanf("%d%d",&a[i],&b[i]);for (i=1; i<=1000; i++){sum=0; FLAG=true; cnt=0; CNT=0;for (j=1; j<=n; j++)if (b[j]<=i && (a[j]<=b[j] || a[j]>i)) sum+=a[j]; elseif (a[j]>i && b[j]>i) {FLAG=false; break;} elseif (b[j]>i) {cnt++; sum+=b[j];} else{p[++CNT]=a[j]-b[j];sum+=a[j];}if (!FLAG) continue;if (cnt>n/2) continue;sort(p+1,p+CNT+1,cmp);for (j=1; j<=min(n/2-cnt,CNT); j++) sum-=p[j];ANS=min(ANS,sum*i);}cout<<ANS;return 0;
}//Ztraveler

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

每當我在路上停下腳步,望著天空我都會看到你。

每當我從荒蕪的夢中驚醒,留著眼淚我都能感覺到你。————汪峰《母親》

轉載于:https://www.cnblogs.com/Damitu/p/7661295.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/370959.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/370959.shtml
英文地址,請注明出處:http://en.pswp.cn/news/370959.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

php基礎是什么,php基礎學什么?

有不少同學想要學習 PHP&#xff0c;但又不清楚 PHP 基礎學什么&#xff0c;那么這篇文章告訴你。熟悉前端開發語言學習 PHP 之前&#xff0c;首先要學習前端語言包括 HTML、CSS、JS 等。等對前端語言有個大致掌握后&#xff0c;能編寫一個 web 靜態頁面。學習 PHP 基本語法和函…

名為 cursor_jinserted 的游標不存在_生鮮電商存在的問題及對策解析:未來生鮮電商如何發展?...

生鮮電商的特點有哪些&#xff1f;生鮮電商特點&#xff1a;1,生鮮電商具有粘性高、重復購買率高、毛利高的“三高”特性&#xff1b;2,生鮮食品需要保鮮、冷藏、冷凍&#xff1b;3,生鮮食品保質期比較短&#xff1b;保存不易、對物流配送的條件要求極高&#xff1b;4,生鮮商品…

遇到短信轟炸,別人換ip調你的短信接口怎么辦

前端開發者很容易暴露自己的請求地址和參數&#xff0c;我們都知道&#xff0c;一個h5頁面&#xff0c;按 F12 是可以看到頁面的源碼的&#xff0c;所以經常很多人會利用這一點惡意調取別人的接口。 我們公司出現了好多次短信接口被大量調用&#xff0c;導致一天發了幾萬條短信…

UVa 10170 - The Hotel with Infinite Rooms

題目&#xff1a;求從s開始的遞增序列&#xff08;每次加1&#xff09;。求出他們加和不小于D的那個最后的加數。 分析&#xff1a;數學題。分治。s s1 ... n n*&#xff08;n1&#xff09;/2 - s*&#xff08;s-1&#xff09;/2 &#xff08;ns&#xff09;*&#xff08;…

番石榴函數和Java 8 Lambdas

我最近閱讀了Brian Goetz的《 Lambda的狀況》 &#xff0c;在閱讀了該文章之后&#xff0c;我想嘗試使用Java 8 Lambda表達式。 Brian在他的文章中繼續描述了將一種方法稱為“功能”接口的接口。 功能接口幾乎總是用作匿名類&#xff0c;其中ActionListener是規范示例。 這些“…

linux rsync刪文件速度,為什么用rsync刪除大量文件的時候比用rm快

為什么用rsync刪除大量文件的時候比用rm快今天研究怎么在Linux下快速刪除大量文件&#xff0c;搜到很多人都說可以用rsync來刪除大量文件&#xff0c;速度比rm要快很多&#xff0c;但是沒有人說為什么&#xff0c;仔細研究了一下原因&#xff0c;總結起來大概就是&#xff0c;一…

關于源碼,反碼,補碼(正數--負數)---------(-128)自己的理解

以一個字節為例 1、無符號位&#xff0c;一個字節可以存放0~255共256個數字&#xff1b;有符號位存放-128~127共256個數字&#xff1b; 2、無符號全都表示為正數&#xff1b;有符號位則首位表示正負數&#xff0c;正數首位為0&#xff0c;負數首位為1&#xff08;因此在判斷一個…

英特爾x722網卡驅動_產品詳情 | 從核心到邊緣,英特爾加速5G網絡基礎設施建設...

英特爾近期宣布推出無可比擬的5G基礎設施芯片產品組合&#xff0c;包括一款面向無線基站的10納米片上系統(SoC)英特爾凌動P5900&#xff0c;和一款面向5G網絡處理的結構化ASIC&#xff0c;一款針對5G網絡優化、提供基于GPS的高精度網絡服務同步功能的以太網適配器。此外&#x…

canvas離屏技術與放大鏡實現

教程所示圖片使用的是 github 倉庫圖片&#xff0c;網速過慢的朋友請移步>>> &#xff08;原文&#xff09;canvas 離屏技術與放大鏡實現。 更多討論或者錯誤提交&#xff0c;也請移步。 利用canvas除了可以實現濾鏡&#xff0c;還可以利用離屏技術放大鏡功能。為了方…

虛擬機下安裝ubuntu后root密碼設置

問題描述&#xff1a; 在虛擬機下安裝了ubuntu中要輸入用戶名&#xff0c;一般情況下大家都會輸入一個自己的網名或綽號之類的&#xff0c;密碼也在這時設置過了。 但是當安裝成功之后&#xff0c;使用命令#su root&#xff0c;然后輸入剛才設置的密碼&#xff0c;發現密碼錯誤…

使用Ajax的Spring MVC REST調用

這篇文章提供了對Spring MVC Web應用程序的REST調用的簡單示例。 它基于在Spring MVC上下文示例中使用Spring MVC服務靜態資源和使用Ajax獲取JSON 。 該代碼可在GitHub的Spring-REST-With-Ajax目錄中找到。 主頁 我們的主頁包含與執行Ajax調用的Javascript函數鏈接的四個按鈕…

團隊作業—預則立他山之石

團隊作業—預則立&&他山之石 Deadline: 2017.10.24 22:00pm 作業要求 一、確立團隊選題&#xff0c;建立和初步熟悉團隊git的協作方式。項目后續的代碼、文檔都要通過github增量式管理。實現文檔的版本化和增量式管理。 二、初步確立團隊任務計劃&#xff0c;將團隊的任…

linux7系統如何配置網卡,Linux 7 配置網卡(nmcli)

操作系統版本&#xff1a;[rootcjcos01 network-scripts]# cat /etc/redhat-releaseRed Hat Enterprise Linux Server release 7.5 (Maipo)查看網卡、IP等信息&#xff1a;[rootcjcos01 ~]# ifconfigenp0s3: flags4163 mtu 1500inet 192.168.1.90 netmask 255.255.255.0 bro…

學以致用深入淺出數字信號處理 pdf_數字陣列雷達--相控陣專題講座之三

數字陣列雷達-相控陣專題講座之三https://www.zhihu.com/video/1218562626877583360從名詞上看&#xff0c;數字陣列雷達&#xff0c;肯定是陣列雷達了&#xff0c;那么數字陣列與傳統的相控陣雷達又有什么區別呢&#xff1f;傳統的相控陣雷達&#xff0c;是依靠移相器、衰減器…

Ubuntu中右擊出現終端

1 root用戶 $sudo apt-get install nautilus-open-terminal 2重啟 3ok 轉載于:https://www.cnblogs.com/lanjianhappy/p/6761599.html

MapReduce:處理數據密集型文本處理–局部聚合第二部分

這篇文章繼續進行有關使用MapReduce進行數據密集型處理的書中實現算法的系列文章。 第一部分可以在這里找到。 在上一篇文章中&#xff0c;我們討論了使用本地聚合技術來減少通過網絡進行混洗和傳輸的數據量的方法。 減少傳輸的數據量是提高MapReduce作業效率的主要方法之一。 …

python爬蟲需要什么知識-學習Python爬蟲技術,需要掌握哪些web端的知識?

HTML5&#xff1a;html概述和基本結構、html標題標簽、html段落標簽、換行標簽、塊標簽、圖片標簽、a鏈接標簽、列表標簽、表格、表單、頁面布局等。 CSS3&#xff1a;CSS基本語法和頁面引用、CSS文本設置、顏色表示法、CSS選擇器、盒子模型、盒子模型實際尺寸、浮動、四大定位…

UDP學習總結

1、UDP的優勢是什么&#xff1f;有哪些典型的應用是使用UDP的&#xff1f;為什么&#xff1f; 2、轉載于:https://www.cnblogs.com/zhouhaibing/p/7669251.html

Linux版本的SVN客戶端,linux 下安裝 subversion(svn) 客戶端

svn server 為只支持http://協議的windows;test web server 為as4,現需安裝svn客戶端方便同步代碼網上找了下都是講如何安裝svn server的&#xff0c;我只需要一個支持http協議的客戶端哈&#xff0c;不想裝apache。安裝所需軟件apr,apr-util,sqlite,neon,subversion1.下載軟件…

使用bootstrap的dropdown部件時報錯:error:Bootstrap dropdown require Popper.js

前言&#xff1a;前端小白一枚&#xff0c;剛注冊博客&#xff0c;先發個學習過程中新碰到小問題試試水吧~ 摘要&#xff1a;最近在學習bootstrap&#xff0c;偶然碰到了一個小問題&#xff0c;bootstrap網站也沒有做過多的解釋&#xff0c;今天分享給大家。 問題描述&#x…