T1

             

思路:

  输入数据,sort一下,
  如果a[i]>sum+1(前缀和)
  那么sum+1就一定不会被拼出来,
  然后输出即可.

上代码:

#include <iostream>
#include <cstdio>
#define LL long long
using namespace std; const int Maxn = ;
int n;
LL sum,a[Maxn]; int main() {
freopen("lost.in","r",stdin);
freopen("lost.out","w",stdout);
scanf("%d",&n);
for(int i=; i<=n; ++i) scanf("%lld",&a[i]);
sort(a+,a++n);
for(int i=; i<=n; ++i) {
if(sum+<a[i]) {
printf("%lld",sum+);
return ;
}
else sum+=a[i];
}
printf("%lld",sum+);
return ;
}

T1


T2

思路:

  1.i<=sqrt(n)
  2.i>sqrt(n)
    30%
      暴力枚举
    100%
      1.n/i-n/(i+1)<=1 <---> n<=i*(i+1)
      //单调递减--->解不等式O(1)进行求解
      2.二分答案

上代码:

#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cassert>
using namespace std; typedef long long LL;
LL n;
bool check(LL x) { // n <= x*(x+1)
if(x*.*(x+)>1e18) return true;
if(n <= x *(x+)) return true;
return false;
}
int main() {
freopen("div.in","r",stdin);
freopen("div.out","w",stdout);
scanf("%lld",&n);
if(n==) {
puts("");
} else if(n==) {
puts("");
} else {
LL L = ,R=n-;
while(R-L>) {
LL mid = (L+R)/;
if(check(mid)) R=mid;
else L=mid;
}
// assert(check(R));
printf("%lld\n",L+(n/R));
}
return ;
}

100


T3

思路:

  1.60% 2^n 进行枚举
    其实来个普通的dfs就行233
  2.100%
    qwq我我我...暂时不会

上代码:

#include<cstdio>
#include<iostream>
using namespace std; const int M = ;
int n,m,vi[M];
double ans[M],pi[M],arcpi[M]; void dfs(int now,int Count,int Money,double k) {
if(now>n) {
if(Money>=m) ans[Count]+=k;
return;
}
dfs(now+,Count,Money+vi[now],k*pi[now]);
dfs(now+,Count+,Money,k*arcpi[now]);
} int main() {
freopen("diamond.in","r",stdin);
freopen("diamond.out","w",stdout);
scanf("%d%d",&n,&m);
for(int i=,tmp; i<=n; i++) {
scanf("%d%d",&vi[i],&tmp);
pi[i]=1.0*tmp/,arcpi[i]=1.0-pi[i];
}
dfs(,,,);
for(int i=; i<=n; i++) printf("%.3lf\n",ans[i]);
return ;
}

北京清北 综合强化班 Day5的更多相关文章

  1. 2017.10.5北京清北综合强化班DAY5

    拼不出的数lost.in/.out/.cpp[问题描述]3 个元素的集合{5, 1,2} 的所有子集的和分别是0,1, 2, 3, 5, 6, 7, 8.发现最小的不能由该集合子集拼出的数字是4.现在 ...

  2. 2017.10.3北京清北综合强化班DAY3

    括号序列(bracket) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK有一个括号序列,但这个序列不一定合法. 一个合法的括号序列如下: ()是合法的 ...

  3. 2017.10.4北京清北综合强化班DAY4

    财富(treasure) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK有n个小伙伴.每个小伙伴有一个身高hi. 这个游戏是这样的,LYK生活的环境是以 ...

  4. 2017.10.7北京清北综合强化班DAY7

    1.计数 (count.cpp/c/pas) 时间限制:1s 内存限制:256MB [问题描述] 给出m个数a[1],a[2],…,a[m] 求1~n中有多少数不是a[1],a[2],…,a[m]的倍 ...

  5. 2017.10.6北京清北综合强化班DAY6

    题目大意:改变一个数的位置 把一个序列变成不下降序列 题解: 设置一个pre,如果破坏单调性,就把‘删除’这个.否则把pre修改为当前元素的值. 考试时这样得了90分,是因为我的做法只能过这样的数据 ...

  6. 2017.10.2北京清北综合强化班DAY2

    a[问题描述]你是能看到第一题的 friends呢.                                                —— hja世界上没有什么比卖的这 贵弹丸三还令人绝 ...

  7. 2017.10.1北京清北综合强化班DAY1

    a[问题描述]你是能看到第一题的 friends 呢.——hja何大爷对字符串十分有研究,于是天天出字符串题虐杀 zhx. 何大爷今天为字符串定义了新的权值计算方法.一个字符串 由小写字母组成,字符串 ...

  8. 北京清北 综合强化班 Day4

    财富(treasure) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK有n个小伙伴.每个小伙伴有一个身高hi. 这个游戏是这样的,LYK生活的环境是以 ...

  9. 北京清北 综合强化班 Day3

    括号序列(bracket) Time Limit:1000ms   Memory Limit:128MB 题目描述 LYK有一个括号序列,但这个序列不一定合法. 一个合法的括号序列如下: ()是合法的 ...

随机推荐

  1. 恩佐夫博弈+JAVA大数

    题意:http://acm.hdu.edu.cn/showproblem.php?pid=5973 根号5复制后200位就行了,因为BigDecimal不支持开根号,除法二分开根. import ja ...

  2. jquery【点击】导航按钮的来回切换

    先获取元素的属性值,根据属性值进行判断,点击时对属性进行设置 <i class="layui-icon layui-icon-shrink-right" id="n ...

  3. npm—入门指导

    npm npm是什么? NPM(node package manager),通常称为node包管理器.顾名思义,它的主要功能就是管理node包,包括:安装.卸载.更新.查看.搜索.发布等. npm的背 ...

  4. 计算机基础与python安装

    计算机基础 内容详细: 一.计算机基础 1. 计算机什么组成的 输入输出设备 cpu 硬盘 内存 中央处理器 处理各种数据 相当于人的大脑 内存 存储数据 硬盘 存储数据的 2. 什么是操作系统 控制 ...

  5. 一块40克的砝码,摔成4块,利用天平,刚好可以称出1~40g所有整数克,问:这4块分别是多少克

    public static void main(String[] args) { List<Integer> list = new ArrayList<>();//记录每组数的 ...

  6. OpsManager管理MongoDB

    mydb1 Ops Manager,mongodb,agent mydb2 mongodb,agent mydb3 mongodb,agent NUMA Settings sysctl -w vm.z ...

  7. Redis学习存档(1)——安装

    以虚拟机中的Linux系统(CentOS 6.5)中安装Redis为例 一.下载Redis 使用wget进行下载,可能部分系统不带wget命令,则yum下载即可 yum -y install wget ...

  8. 【数据结构】P1310 表达式的值

    [题目链接] https://www.luogu.org/problem/P1310 题目描述 对于1 位二进制变量定义两种运算: 运算的优先级是: 先计算括号内的,再计算括号外的. “× ”运算优先 ...

  9. UML学习(四)-----状态图

    状态图主要用于描述对象具有的各种状态.状态之间的转换过程以及触发状态转换的各种事件和条件. 1.状态图的组成 1.1 状态 主要用于描述一个对象在生命周期内的一个时间段.状态图中的状态包括状态名.内部 ...

  10. Windows编程 Windows程序的生与死(中)

    <pre style=""><pre class="cpp" name="code">1 #include < ...