2017.10.5 QBXT 模拟赛
T1
从小到大排序,用sum记录前缀和,然后枚举1~n个数 ,如果当前的前缀和 + 1小于a[i]的话 那么 sum + 1永远不可能拼出来 直接输出sum + 1 ,否则统计前缀和。最后如果仍没找到最小的解,输出所有数的和+1
#include <algorithm>
#include <cstdio>
#define N 100005
typedef long long LL;
using namespace std;
int n,a[N]; int main()
{
scanf("%d",&n);
for(int i=;i<=n;++i) scanf("%d",&a[i]);
sort(a+,a++n);
LL sum=;
for(int i=;i<=n;++i)
{
if(a[i]>sum+)
{
printf("%lld\n",sum+);
return ;
}
else sum+=a[i];
}
printf("%lld\n",sum+);
return ;
}
T2
规律题
#include <cstdio>
#include <cmath> long long n;
int main()
{
freopen("div.in","r",stdin);
freopen("div.out","w",stdout);
scanf("%lld",&n);
long long k=sqrt(n);
if(k==n/k) printf("%lld\n",k*-);
else printf("%lld\n",k*);
fclose(stdin); fclose(stdout);
return ;
}
T3
meet in the middle
#include<algorithm>
#include<cstring>
#include<cstdio>
#include<vector> using namespace std;
int tt;
int n,m;
int v[];
double p[];
double ans[];
vector<pair<int,double> > sta[];
int main()
{
freopen("diamond.in","r",stdin);
freopen("diamond.out","w",stdout);
scanf("%d%d",&n,&m);
for(int i=,x;i<=n;i++)
{
scanf("%d%d",&v[i],&x);
p[i]=x/.;
}
int an=(n/2.5)+;
int bn=n-an;
for(int st=;st<<<bn;st++)
{
double nowp=;
int cnt=,money=;
for(int i=;i<bn;i++)
{
if((st>>i)&)
{
money+=v[n-i];
nowp*=p[n-i];
}
else
{
cnt++;
nowp*=(-p[n-i]);
}
}
sta[cnt].push_back(make_pair(money,nowp));
}
for(int i=;i<=n;i++)
{
sort(sta[i].begin(),sta[i].end());
for(int j=;j<sta[i].size();j++)
sta[i][j].second+=sta[i][j-].second;
}
for(int st=;st<<<an;st++)
{
double nowp=;
int cnt=,money=;
for(int i=;i<an;i++)
{
if((st>>i)&)
{
money+=v[i+];
nowp*=p[i+];
}
else
{
cnt++;
nowp*=(-p[i+]);
}
}
for(int i=;i<=bn;i++)
{
// now d =cnt+i
int L = m-money;
vector<pair<int,double> >::iterator it = lower_bound(sta[i].begin(),sta[i].end(),make_pair(L,-.));
double tmp = sta[i].back().second;
if(it!= sta[i].begin())
{
it--;
tmp-=it->second;
}
ans[cnt+i] += tmp*nowp;
}
}
for(int i=;i<=n;i++)
printf("%.3f\n",ans[i]);
fclose(stdout);
return ;
}
2017.10.5 QBXT 模拟赛的更多相关文章
- 2017.10.7 QBXT 模拟赛
题目链接 T1 容斥原理,根据奇偶性进行加减 #include<iostream> #include<cstdio> using namespace std; typedef ...
- 2017.10.3 QBXT 模拟赛
题目链接 T1 模拟 #include <cstring> #include <cstdio> #define N 105000 int L,R; char s[N]; int ...
- 2017.10.6 QBXT 模拟赛
题目链接 T1 Sort 一下与原数组比较 ,若有两个数或者没有数发生位置交换 ,则输出YES ,否则输出NO #include <algorithm> #include <ccty ...
- 2017.10.4 QBXT 模拟赛
题目链接 T1 维护一个单调栈 #include <iostream> #include <cstdio> #define N 500000 #define rep(a,b,c ...
- 2017.10.2 QBXT 模拟赛
题目链接 T1 我们所要求得是(a*b)|x 也就是 使(a*b)的倍数小于x的个数之和 1<=x<=n 我们可以 找一个c使得 (a*b*c)<=x 由于我们所求的是一个三元有序对 ...
- 2017.10.1 QBXT 模拟赛
题目链接 T1 枚举右端点,前缀和优化.对于当前点x,答案为 sum[x][r]-sum[x][l-1]-(sum[z][r]-sum[z][l-1]) 整理为 sum[x][r]-sum[z][r] ...
- 2017 10.25 NOIP模拟赛
期望得分:100+40+100=240 实际得分:50+40+20=110 T1 start取了min没有用,w(゚Д゚)w O(≧口≦)O T3 代码3个bug :数组开小了,一个细节没注意, ...
- 2017.10.28 QB模拟赛 —— 下午
题目链接 T1 按x值排序 遇到第二种牌插入 遇到第一种牌 查询<=y 的最小值 删除他 splay multiset cys大佬说 multiset就是不去重的set, #include &l ...
- 2017.10.28 QB模拟赛 —— 上午
题目链接 T1 1e18 内的立方数有 1e6个 直接枚举可过 二分最优 考场用set 死慢.. #include <cstdio> int t; long long p; int ma ...
随机推荐
- phpstrom添加monokai-sublime主题
phpstrom默认的主题看起来不是特别舒服,sublime的主题却相当养眼,搜索之后,大为惊喜. 下载地址:https://github.com/sumiaowen/jetbrains-monoka ...
- 在MongoDB中修改数据类型
引言 本文主要讲解Mongodb的类型转换.包括:string转double, string转int, string转Date. 0. 出现类型不一致的原因 ES导入数据到Mongo后,会出现类型统一 ...
- 基于Laravel框架的一个简单易学的微信商城(新手必学)
俗话说,麻雀虽小可五脏俱全呀! 今天分享的这个基于Laravel的小项目大概功能有这些: 1.实现会员登录.注册功能.数据双向验证功能.2.实现手机短信验证.邮件激活账号.邮件通知.3.ajax提交数 ...
- Manacher's Algorithm 马拉车算法(最长回文串)
这个马拉车算法Manacher‘s Algorithm是用来查找一个字符串的最长回文子串的线性方法,由一个叫Manacher的人在1975年发明的,这个方法的最大贡献是在于将时间复杂度提升到了线性,这 ...
- 由一次动态改变font-size的大小引申的一系列困惑补录
以下结论如有错误,欢迎指正 在切入正题之前,先了解下window 和document这两个大对象 我们熟知 JavaScript的组成如下图所示: window对象和document对象分别属于哪个分 ...
- Jmeter接口自动化参数化 (转自软件测试部落)
测试场景: 有个查询城市(大概一百个 )天气预报的接口(需求参考第一课),需要根据不同的citycode,去查询对应城市的天气预报,这种接口该如何去测试呢? 分析需求: 不管是功能测试需求,还是接口测 ...
- 洛谷P5173 传球(暴力)
传送门 真·暴力艹过去 不难发现这个转移其实就是一个循环卷积的形式,设有多项式\(A=x+x^{n-1}\),那么\(f_m=f_0\times A^m\) 直接暴力计算并卡常就行了 //minamo ...
- Google Analytics & Webtrend 使用笔记
GA和webtrend中的参数,每每遇到了都记不住.遇到一点记一点好了... Page Views(PV): 浏览次数.用户每打开一个页面,记录为1个PV:用户多次打开同一个页面,PV累计多次. Da ...
- IT兄弟连 Java语法教程 变量2
变量的作用域和生命周期 到目前为止,使用的所有变量都是在main()方法开始时声明的,然而,Java允许在任何代码块(代码块以开花括号开始,以闭花括号结束)中声明变量,代码块定义了作用域.因此,每当开 ...
- 使用JSONPath
SONPath是查询JSON对象元素的标准方法.JSONPath使用路径表达式来导航JSON文档中的元素,嵌套元素和数组.有关JSON的更多信息,请参阅JSON简介. 使用JSONPath访问JSON ...