题目背景

小明和小红的感情,是慢慢发展起来的。

题目描述

他们对对方分别有一个好感值。定义两人的亲密程度为两人的好感值之和。

如果他们的亲密程度达到V,则他们将走到一起。他们以后的生活将取决于两人的好感值之差的绝对值,这个值越小,他们的生活将越幸福。

现在,他们对对方的好感值都为0,小明有N件事可以干,每件事可以增加他对小红的好感Ai点,并且增加小红对他的好感Bi点。(可能为负数)

小明可以任选一些事做,请你帮小明求出怎样才能让他们的生活更加幸福(求出两人在一起的前提下,好感值之差的最小绝对值即可)。

输入输出格式

输入格式:

第1行,两个正整数N,V。

之后N行,每行两个空格隔开的整数Ai,Bi。

输出格式:

一行,一个非负整数,表示两人在一起的前提下,好感值之差的最小绝对值。如果无论如何两人也无法在一起,输出-1.

输入输出样例

输入样例#1: 复制

4 15
5 6
-1 8
7 2
1 0
输出样例#1: 复制

3

说明

对于20%数据,N<=10。

对于全部数据,N<=30,|Ai|,|Bi|<=100. 数据比较弱

思路:暴力:搜索+卡时。

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n,v,A,B,tot;
int ans=0x7f7f7f7f;
int a[],b[];
void dfs(int now,int sum){
tot++;
if(tot==){printf("%d",ans);exit();}
if(sum>v) ans=min(ans,abs(A-B));
if(now==n+) return ;
A+=a[now];B+=b[now];dfs(now+,sum+a[now]+b[now]);A-=a[now];B-=b[now];
dfs(now+,sum);
}
int main(){
scanf("%d%d",&n,&v);
for(int i=;i<=n;i++)
scanf("%d%d",&a[i],&b[i]);
dfs(,);
if(ans==0x7f7f7f7f) cout<<"-1";
else cout<<ans;
}

不去卡时,加一个小优化,就是当好感的差的绝对值是0时直接结束。

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n,v,A,B,tot;
int ans=0x7f7f7f7f;
int a[],b[];
void dfs(int now,int sum){
if(sum>v) ans=min(ans,abs(A-B));
if(ans==){ cout<<ans;exit(); }
if(now==n+) return ;
A+=a[now];B+=b[now];dfs(now+,sum+a[now]+b[now]);A-=a[now];B-=b[now];
dfs(now+,sum);
}
int main(){
scanf("%d%d",&n,&v);
for(int i=;i<=n;i++)
scanf("%d%d",&a[i],&b[i]);
dfs(,);
if(ans==0x7f7f7f7f) cout<<"-1";
else cout<<ans;
}

洛谷 P2080 增进感情的更多相关文章

  1. P2080 增进感情

    题目背景 小明和小红的感情,是慢慢发展起来的. 题目描述 他们对对方分别有一个好感值.定义两人的亲密程度为两人的好感值之和. 如果他们的亲密程度达到V,则他们将走到一起.他们以后的生活将取决于两人的好 ...

  2. P2080 增进感情(背包DP)

    思路:将好感度x+y作为体积, 幸福度x-y作为作为价值, 然后就是一个经典的背包问题了.emmmmm,还可以特判一下,因为幸福度为0时就是最小了,没有必要看后面的了吧. 其实,我自己做的时候,沙雕的 ...

  3. 题解 P2080 增进感情

    \(\sf Link\) 爆搜最香了. 感觉有点像01背包(? 对于每件事,我们可以选择干或者不干,如果干就将好感值处理一下,当所有的事都搜完之后,记录最小值\(minn\) . 最终答案就是\(mi ...

  4. [洛谷P2113] 看球泡妹子

    洛谷题目链接:看球泡妹子 题目背景 2014年巴西世界杯开幕了,现在满城皆是世界杯,商家们利用它大赚一笔,小明和小红也借此机会增进感情. 题目描述 本届世界杯共有N支球队,M场比赛.男球迷小明喜欢看比 ...

  5. 洛谷1373 小a和uim之大逃离

    洛谷1373 小a和uim之大逃离 本题地址:http://www.luogu.org/problem/show?pid=1373 题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北 ...

  6. DP【洛谷P2363】马农

    [洛谷P2363]马农 题目描述 在观看完战马检阅之后,来自大草原的两兄弟决心成为超级"马农",专门饲养战马. 兄弟两回到草原,将可以养马的区域,分为N*N的单位面积的正方形,并实 ...

  7. 洛谷 P1789 【Mc生存】插火把 题解

    P1789 [Mc生存]插火把 题目背景 初一党应该都知道...... 题目描述 话说有一天 linyorson 在"我的世界"开了一个 \(n\times n(n\le 100) ...

  8. 洛谷1640 bzoj1854游戏 匈牙利就是又短又快

    bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类 ...

  9. 洛谷P1352 codevs1380 没有上司的舞会——S.B.S.

    没有上司的舞会  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond       题目描述 Description Ural大学有N个职员,编号为1~N.他们有 ...

随机推荐

  1. Constructor call must be the first statement in a constructor

    super()和this ()不能共存.否则编译时会报异常. Constructorcall must be the first statement in a constructor 换句话说就是su ...

  2. Vue小技巧,如何导入普通JS文件

    最近在开发一个展示3D模型的WEB程序,在工程中使用了VUE和ThreeJS库.Three.js本身是支持CommonJS的,但我们还用到了OBJLoader模块,此模块不支持CommonJS,改成C ...

  3. poj_1974,最长回文字串manacher

    时间复杂度为O(n),参考:http://bbs.dlut.edu.cn/bbstcon.php?board=Competition&gid=23474 #include<iostrea ...

  4. java中"".equals(A)与A.equals("")一样不?

    不一样如果a为nulla = null;a.equals("")出错nullPointerException如果写为"".equals(a)-->就可以防 ...

  5. jsp登录会话

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  6. 为什么在input中加了display:inline;再加宽,还有作用?

    以前一直一位input是个行内元素,但是,行内元素的特性就是没有宽高的概念,元素多高,多宽,全凭内容撑起来的. 但是今天写了个demo,用chrome控制台显示:display:inline-bloc ...

  7. 离奇失踪的WM_HOTKEY消息--浅析WIN32消息队列

    故事的开端有些平淡,眼红于XXX小程序,认为写完该程序就有了和心仪的妹子多相处的机会,必须搞,必须酷,按钮不能有,界面得隐藏,这就想到了全局快捷键. 注册调用RegisterHotKey(m_hWnd ...

  8. caffe(13) 数据可视化(python接口)配置

    caffe程序是由c++语言写的,本身是不带数据可视化功能的.只能借助其它的库或接口,如opencv, python或matlab.大部分人使用python接口来进行可视化,因为python出了个比较 ...

  9. C#中Dictionary排序方式

    转载自:https://www.cnblogs.com/5696-an/p/5625142.html 自定义类: https://files.cnblogs.com/files/xunhanliu/d ...

  10. Android-Volley网络通信框架(StringRequest &amp; JsonObjectRequest)

    1.回想 上篇对 Volley进行了简介和对它的学习目的与目标,最后,为学习Volley做了一些准备 2.重点 2.1 RequestQueue 请求队列的建立 2.2 学习 StringReques ...