当前位置: 首页 > 编程日记 > 正文

HPU组队赛B:问题(二进制枚举)

时间限制1 Second 内存限制 512 Mb

题目描述


你有n个问题,你已经估计了第i个问题的难度为Ci,现在你想使用这些问题去构造一个问题集。比赛的问题集必须包含至少两个问题,而且比赛的总难度必须至少为l至多为r,此外最简单的问题和最难的问题之间的差异至少为x请您找出能够选择的问题集的数量。

输入

第一行有T组输入(1 ≤ T ≤ 10接下来一行输入n, l, r, x (1 ≤ n ≤ 10, 1 ≤ l ≤ r ≤ 1e9, 1 ≤ x ≤ 1e6)然后输入n个正整数 c1, c2, c3....cn (1 ≤ ci ≤ 1e6)

输出

每组输出单独占一行,一个正整数表示答案

输入样例

2
3 5 6 1
1 2 3
4 40 50 10
10 20 30 25

输出样例

2
2

思路

二进制枚举,每次枚举一个状态,统计该状态下的最大难度值,最小难度值,总难度值,然后判断这些数据满不满足题目所给的条件,满足的话,问题集数量加一

因为之前不理解二进制枚举,在这个题上面卡了大概一个小时,最后把以前的模板输出了一下,顿悟,然后一遍敲过。对二进制枚举也有了更深的理解

AC代码

#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
#include <math.h>
#include <limits.h>
#include <map>
#include <stack>
#include <queue>
#include <vector>
#include <set>
#include <string>
#define ll long long
#define ull unsigned long long
#define ms(a) memset(a,0,sizeof(a))
#define pi acos(-1.0)
#define INF 0x7f7f7f7f
#define lson o<<1
#define rson o<<1|1
const double E=exp(1);
const int maxn=1e6+10;
const int mod=1e9+7;
using namespace std;
int a[maxn];
int main(int argc, char const *argv[])
{ios::sync_with_stdio(false);int t;int n,l,r,x;cin>>t;while(t--){cin>>n>>l>>r>>x;for(int i=0;i<n;i++){cin>>a[i];}int ans=0;for(int i=0;i<(1<<n);i++){int diff_min=INT_MAX;//题目的最小难度int diff_max=INT_MIN;//题目的最大难度int diff_sum=0;//题目的总难度for(int j=0;j<n;j++){if(i>>j&1){diff_min=min(diff_min,a[j]);diff_max=max(diff_max,a[j]);diff_sum+=a[j];}}if(diff_max-diff_min>=x&&diff_sum>=l&&diff_sum<=r)ans++;}cout<<ans<<endl;}return 0;
}


转载于:https://www.cnblogs.com/Friends-A/p/10324374.html

相关文章:

html脱机不显示图片,Python绘图脱机图表嵌入HTML(不工作)

aPlot是绘图文件的文件名。在在您的iframe中&#xff0c;您将.embed?width800&height550添加到文件名中&#xff0c;这将导致一个不存在的文件名。在当您删除这个字符串时&#xff0c;即src" aPlot "&#xff0c;它应该可以工作。在不必嵌入整个HTML文件&…

数据库分库分表(sharding)系列

数据库分库分表(sharding)系列转载于:https://www.cnblogs.com/gotodsp/p/6517478.html

php imagecopy 用法,php使用imagecopymerge()函数创建半透明水印

使用imagecopymerge() 函数创建半透明水印&#xff0c;供大家参考&#xff0c;具体内容如下// 加载要加水印的图像$im imagecreatefromjpeg(photo.jpeg);// 首先我们从 GD 手动创建水印图像$stamp imagecreatetruecolor(100, 70);imagefilledrectangle($stamp, 0, 0, 99, 69,…

linux系统yum源,Linux开启安装EPEL YUM源

我们用yum安装软件时,经常发现我们的yum源里面没有该软件&#xff0c;需要自己去wget&#xff0c;然后configure,make,make install&#xff0c;太折腾了。其实&#xff0c;CentOS还有一个源叫做 EPEL (Extra Packages for Enterprise)&#xff0c;里面有1万多个软件&#xff0…

MATLAB简易验证码识别程序介绍

本推文主要识别的验证码是这种:第一步: 二值化所谓二值化就是把不需要的信息通通去除&#xff0c;比如背景&#xff0c;干扰线&#xff0c;干扰像素等等&#xff0c;只剩下需要识别的文字&#xff0c;让图片变成2进制点阵。第二步: 文字分割为了能识别出字符&#xff0c;需要对…

mac终端命令-----常规操作

OSX 的文件系统 OSX 采用的Unix文件系统&#xff0c;所有文件都挂在跟目录 / 下面&#xff0c;所以不在要有Windows 下的盘符概念。 你在桌面上看到的硬盘都挂在 /Volumes 下。 比如接上个叫做 USBHD的移动硬盘&#xff0c;桌面上会显示出一个硬盘图标&#xff0c;它实际在哪里…

php true true true,php-为什么此评估为true

标签&#xff1a;php乳清这算是真的吗&#xff1f;$val20;//outputs that is an error123if($val2error123){echo that is an error123;}else{echo that is not an error123;}解决方法:您正在将字符串与整数进行比较.为了进行比较,首先将字符串转换为整数.当“ error123”转换为…

一个html文件放到服务器访问,访问云服务器里面的html文件

弹性云服务器 ECS弹性云服务器(Elastic Cloud Server)是一种可随时自助获取、可弹性伸缩的云服务器&#xff0c;帮助用户打造可靠、安全、灵活、高效的应用环境&#xff0c;确保服务持久稳定运行&#xff0c;提升运维效率三年低至5折&#xff0c;多种配置可选了解详情建站入门|…

limbo可以运行linux,这次真的了,安卓手机可以安装 Windows 10 了

原标题&#xff1a;这次真的了&#xff0c;安卓手机可以安装 Windows 10 了上回雷锋哥给大家分享过「安卓可以体验 "Windows 10" 了」实际上就是一个第三方安卓桌面启动器模仿 Windows 10 的主题&#xff0c;所以只能说是美化&#xff0c;并非真的运行 Windows 10 系…

Fedora dnf配置

1、在配置文件/etc/dnf/dnf.conf中加入&#xff1a; fastestmirrortruekeepcachetrue这样下载安装软件就快多了。 2、dnf常用命令 检查并升级可用软件包&#xff1a;$ dnf update删除缓存:$dnf clean all列出可用的软件源&#xff1a;$ dnf repolist搜索软件:$ dnf search $…

2021梧州一中高考成绩查询,2021年广西高考成绩查询网站查分网址:https://www.gxeea.cn/...

【摘要】高考结束后大家最为关心的问题就是在哪里查分&#xff0c;如何查分&#xff0c;高考频道特别整理2021年广西高考成绩查询查分网址&#xff0c;成绩公布时考生可直接点击网址进行查分&#xff0c;预祝大家都能顺利的考上理想的大学&#xff01;由于&#xff0c;各省级招…

php ip地址地区,PHP查询ip所在地(省份,市)

通过IP获取归属地图1 &#xff1a; 返回数据图2 &#xff1a; 查询成功如果喜欢的话&#xff0c;可以试试&#xff0c;几行代码就能搞定&#xff0c;我觉得还是挺实用的&#xff01;&#xff01;

描述一下 Intent 和 IntentFilter?

Android 中通过 Intent 对象来表示一条消息&#xff0c;一个 Intent 对象不仅包含有这个消息的目的地&#xff0c;还可以包含消息的内容&#xff0c;这好比一封 Email&#xff0c;其中不仅应该包含收件地址&#xff0c;还可以包含具体的内容。对于一个 Intent 对象&#xff0c;…

linux字符界面教程,打造字符界面的多媒体Linux系统

打造字符界面的多媒体Linux系统打造字符界面的多媒体Linux系统0 环境与目标硬件&#xff1a;ThinkPad R52笔记本一台。目标&#xff1a;字符界面的LINUX系统&#xff0c;同时可以看图片&#xff0c;听音乐&#xff0c;看视频&#xff0c;无线上网。1 系统安装1.1 最小安装系统官…

Linux 环境 搭建Git 服务器,并且修改SSH端口使用

1.环境配置说明 服务器 CentOS 7 git&#xff08;git version 1.8.3.1&#xff09; 客户端 Windows10 SourceTree 2.安装 Git 服务器端安装&#xff1a; sudo yum -y install git 查看安装版本 #git --version git version 1.8.3.1 客户端安装 下载 SourceTree for Window 下…

php发光字体代码,CSS3怎么实现字体发光效果

这次给大家带来CSS3怎么实现字体发光效果&#xff0c;CSS3实现字体发光效果的注意事项有哪些&#xff0c;下面就是实战案例&#xff0c;一起来看一下。博客页面左上角的“猿来是勇者”文字已制作发光效果&#xff0c;分享方法如下:该属性为文本添加阴影效果text-shadow:h-shado…

计算机专业英语chapter012,计算机专业英语 chapter_1.ppt

计算机专业英语 chapter_1Chapter 1 Information Technology, The Internet, and You;Competencies;Competencies能力&#xff0c;要求After you have read this chapter, you should be able to: Explain the five parts of an information system: people, procedures, softw…

C#与C++的区别

1,C#不支持多重继承&#xff0c;这是与C明显区别的地方&#xff0c;说真的多重继承有时候用起来挺麻烦的&#xff0c;可能微软怕你用不好吧&#xff0c;不给你提供了&#xff0c;但我个人觉得没有了多重继承感觉有点可惜。 2.在标准的C#安全代码中不支持指针类型的操作&#xf…

黑裙安装linux环境,Linux学习笔记(一) ---- 安装Linux系统

学习Linux的第一件事情&#xff0c;你得先有个Linux系统&#xff0c;才能知道怎么学吧&#xff1f;于是安装Linux是第一部,找网上找了不少教程&#xff0c;自己总结了一下&#xff0c;些一个博文先。我安装的Linux是在VMWare 7.2版本上安装的&#xff0c;安装的是Ret Hat Linux…

mybatis批量更新的两种实现方式

mapper.xml文件&#xff0c;后台传入一个对象集合&#xff0c;另外如果是mysql数据库&#xff0c;一点在配置文件上加上&allowMultiQueriestrue&#xff0c;这样才可以执行多条sql&#xff0c;以下为mysql&#xff1a; <update id"batchUpdate" parameterType…

php常用20函数,PHP常用函数

//PHP设置跨域header("Access-Control-Allow-Origin:*");//PHP设置JSON头 以JSON格式输出header("Content-type:application/json; charsetutf-8");//正则取字符串preg_match_all(/字符串(.*?)字符串/i,$data,$out);// PHP把JSON对象转字符串不转码输出js…

tcpdump保存数据包

1、启动tcpdump tcpdump 2、查看网卡 tcpdump -D 3. 抓取报文后隔指定的时间保存一次 tcpdump -i eth3 -s0 -G 60 -Z root -w %Y_%m%d_%H%M_%S.pcap 这里解释下-G选项 后面接时间 单位为秒 本例中的时间为60秒 4. 抓取报文后达到指定的大小保存一次 tcpdump -i eth3 -s0 -C 1 -…

在线翻译系统属于计算机应用领域中,【单选题】网状物编织物和机件上的滚花部分,可以在轮廓线附件用( )线示意画出...

参考答案如下单选【简答题】我决定明天五点起床。(ことになる・ことにする)题网【单选题】法律的规定:邀请招标,应向()个以上具备承担招标项目能力,资信良好的特定法人发出投标邀请书。状物轮【单选题】描述液体运动的方法不包括( )。编织部分【单选题】Everyone _________ on …

linux进行主机发现,linux – 网络上所有计算机的主机名发现

SSH不关心是否给出了要连接的主机名或IP地址(当有特定于主机的配置时,不确定是否适用).大多数MPI实现也不关心,例如在Open MPI连接中,URI地址都是数字,因此具有IP的主机文件可以正常使用.另一方面,HTTP服务器关心的是虚拟主机事件,其中许多不同站点解析为相同的IP地址,但服务器…

Android5.0之CoordinatorLayout的使用

CoordinatorLayout&#xff0c;中文译作协调者布局&#xff0c;光听这名字你可能很难判断出协调者布局有什么特点&#xff0c;那么我们来看看下面一张图片&#xff1a; 由于CSDN对图片大小的要求&#xff0c;我只能录制一个快速播放的动画&#xff0c;请大家见谅。但是显示效果…

微信js sdk动态引用

一般情况下&#xff0c;微信的js-sdk只需要直接引用script即可 <script src"http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script> 但是有的时候&#xff0c;当我们的网页访问的环境多样的时候&#xff0c;比如APP内部&#xff0c;手机浏览器时候&…

java qq协议 c#,C# WebQQ协议群发机器人(三)

在前两篇文章中我已经给了绝大部分的WEBQQ的操作在这篇文章中不在过多的说明做法有的时候需要自己添加一些功能呢 怎么做呢&#xff0c;我这里给出一个方法。在调试webqq机器人时 我用google浏览器 的F12开发者工具来捕捉网络包&#xff0c;webqq绝大多数都是GET请求 参数用来用…

矩阵计算在计算机科学中,开发者必读:计算机科学中的线性代数(附论文)

来源&#xff1a;机器之心作者&#xff1a;Petros Drineas、Michael W. Mahoney本文共3994字&#xff0c;建议阅读6分钟。本文为你分享一篇来自普渡大学与UC Berkeley两位教授的概述论文中的线性代数知识。矩阵计算在计算机科学中占有举足轻重的地位&#xff0c;是每个开发者都…

linux blfs安装桌面,【Linux】Ubuntu14.04安装bridge-utils安装brctl

1、下载bridge-utils http://www.linuxfromscratch.org/blfs/view/svn/basicnet/bridge-utils.html2、放到/usr/src 目录下输入&#xff1a;su以root运行输入&#xff1a;cp /home/joanna/桌面/bridge-utils-1.5.tar.gz /usr/src/bridge-utils-1.5.tar.gzbridge-utils拷贝到/…

HTML5左取函数,Javascript常用方法函数收集(一)

本文中&#xff0c;收集了一些比较常用的Javascript函数&#xff0c;希望对学习JS的朋友们有所帮助。1.字符串长度截取function cutstr(str, len) {var temp,icount 0,patrn /[^\x00-\xff]/&#xff0c;strre "";for (var i 0; i < str.length; i) {if (icoun…