10.11 NOIP模拟题(1)

/*
离散化
差分
*/
#include<bits/stdc++.h> #define N 4000007 using namespace std;
int n,ans;
int tmp[N],a[N],b[N],s[N]; int main()
{
freopen("meizi.in","r",stdin);
freopen("meizi.out","w",stdout);
scanf("%d",&n);
for(int i=;i<=n;i++)
{
scanf("%d%d",&a[i],&b[i]);
tmp[(i<<)-]=a[i],tmp[i<<]=b[i];
}
int num=(n<<)+;
sort(tmp+,tmp+num);
for(int i=;i<=n;i++)
{
a[i]=lower_bound(tmp+,tmp+num,a[i])-tmp;
b[i]=lower_bound(tmp+,tmp+num,b[i])-tmp;
s[a[i]]++;s[b[i]+]--;
}
for(int i=;i<=num;i++) s[i]+=s[i-];
for(int i=;i<=num;i++) ans=max(ans,s[i]);
printf("%d\n",ans);
return ;
}

/*
容斥原理 先保证每列满足
答案为 全部(每列满足) - 一行白(每列满足) + 两行白(每列满足)...
ans=(-1)^k*C(n,k)*(2^(n-k)-1)^m
阶乘逆元组合数
*/
#include<iostream>
#include<cstdio>
#include<cstring> #define N 200001
#define M 1000000007
#define ll long long using namespace std;
ll fac[N]={,},inv[N]={,},f[N]={,};
int n,m;
ll ans; ll ksm(ll a,ll b)
{
ll res=;
while(b)
{
if(b&) res=res*a%M;
b>>=;a=a*a%M;
}return res%M;
} ll C(ll a,ll b)
{
return (fac[a]*inv[b]%M*inv[a-b]%M)%M;
} int main()
{
freopen("matrix.in","r",stdin);
freopen("matrix.out","w",stdout);
for(int i=;i<N;i++)
{
fac[i]=fac[i-]*i%M;
f[i]=(M-M/i)*f[M%i]%M;
inv[i]=inv[i-]*f[i]%M;
} scanf("%d%d",&n,&m);
for(int k=;k<=n;k++)
{
if(k&)
ans=(ans-C(n,k)%M*ksm(ksm(,n-k)-,m))%M;
else
ans=(ans+C(n,k)%M*ksm(ksm(,n-k)-,m))%M;
}
printf("%lld\n",(ans+M)%M);
return ;
}


/*
和的期望即期望的和
55分暴力就行 线段树区间乘,加,求和
*/
#include <iostream>
#include <cstring>
#include <cmath>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <vector>
#include <map>
#include <complex> #define inf 0x3f3f3f3f
#define eps 1e-10 #define lc k << 1
#define rc k << 1 | 1 using namespace std; typedef long long ll;
typedef pair<ll, int> P;
ll p;
double tmp[]; struct node{
double dat, tag1, tag2;
int l, r;
}; struct seg{
node d[]; void pushup(int k){
d[k].dat = d[lc].dat + d[rc].dat;
} void build(int k, int l, int r){
d[k].l = l; d[k].r = r; d[k].tag1 = ; d[k].tag2 = ;
if(l == r){
d[k].dat = tmp[l];
return;
}
int mid = (l + r) >> ;
build(lc, l, mid);
build(rc, mid + , r);
pushup(k);
} void add(int k, double x){
double len = d[k].r - d[k].l + ;
d[k].dat = (d[k].dat + x * len);
d[k].tag1 = (d[k].tag1 + x);
} void mul(int k, double x){
d[k].dat = d[k].dat * x;
d[k].tag1 = d[k].tag1 * x;
d[k].tag2 = d[k].tag2 * x;
} void pushdown(int k){
if(fabs(d[k].tag2 - ) > eps){
mul(lc, d[k].tag2);
mul(rc, d[k].tag2);
d[k].tag2 = ;
}
if(fabs(d[k].tag1) > eps){
add(lc, d[k].tag1);
add(rc, d[k].tag1);
d[k].tag1 = ;
}
} void add(int k, int l, int r, double x){
if(l <= d[k].l && d[k].r <= r){
add(k, x); return;
}
pushdown(k);
int mid = (d[k].l + d[k].r) >> ;
if(l <= mid) add(lc, l, r, x);
if(r > mid) add(rc, l, r, x);
pushup(k);
} void mul(int k, int l, int r, double x){
if(l <= d[k].l && d[k].r <= r){
mul(k, x); return;
}
pushdown(k);
int mid = (d[k].l + d[k].r) >> ;
if(l <= mid) mul(lc, l, r, x);
if(r > mid) mul(rc, l, r, x);
pushup(k);
} double query(int k, int l, int r){
if(l <= d[k].l && d[k].r <= r){
return d[k].dat;
}
pushdown(k); double sum = ;
int mid = (d[k].l + d[k].r) >> ;
if(l <= mid) sum = (sum + query(lc, l, r));
if(r > mid) sum = (sum + query(rc, l, r));
return sum;
} }Seg; int n, m; int main(){ freopen("random.in", "r", stdin);
freopen("random.out", "w", stdout);
scanf("%d%d", &n, &m);
for(int i = ; i <= n; i ++) scanf("%lf", &tmp[i]);
Seg.build(, , n);
while(m--){
int opt, l1, r1, l2, r2; ll x;
scanf("%d", &opt);
if(opt == ){
scanf("%d%d%d%d", &l1, &r1, &l2, &r2);
double d1 = Seg.query(, l1, r1);
double d2 = Seg.query(, l2, r2);
Seg.mul(, l1, r1, double(r1 - l1) / double(r1 - l1 + ));
Seg.mul(, l2, r2, double(r2 - l2) / double(r2 - l2 + ));
Seg.add(, l1, r1, d2 / double(r1 - l1 + ) / double(r2 - l2 + ));
Seg.add(, l2, r2, d1 / double(r2 - l2 + ) / double(r1 - l1 + ));
}
if(opt == ){
scanf("%d%d", &l1, &r1);
printf("%.8lf\n", Seg.query(, l1, r1));
}
}
return ;
}
10.11 NOIP模拟题(1)的更多相关文章
- 10.11 noip模拟试题
4题均为128M,1s 1. 锻炼计划(exercise.pas) 身体是革命的本钱,OIers不要因为紧张的学习和整天在电脑前而忽视了健康问题.小x设计了自己的锻炼计划,但他不知道这个计划是否可行, ...
- 10.17 NOIP模拟赛
目录 2018.10.17 NOIP模拟赛 A 咒语curse B 神光light(二分 DP) C 迷宫maze(次短路) 考试代码 B 2018.10.17 NOIP模拟赛 时间:1h15min( ...
- NOIP模拟题汇总(加厚版)
\(NOIP\)模拟题汇总(加厚版) T1 string 描述 有一个仅由 '0' 和 '1' 组成的字符串 \(A\),可以对其执行下列两个操作: 删除 \(A\)中的第一个字符: 若 \(A\)中 ...
- 8.22 NOIP 模拟题
8.22 NOIP 模拟题 编译命令 g++ -o * *.cpp gcc -o * *.c fpc *.pas 编译器版本 g++/gcc fpc 评测环境 位 Linux, .3GHZ CPU ...
- 10.16 NOIP模拟赛
目录 2018.10.16 NOIP模拟赛 A 购物shop B 期望exp(DP 期望 按位计算) C 魔法迷宫maze(状压 暴力) 考试代码 C 2018.10.16 NOIP模拟赛 时间:2h ...
- 【入门OJ】2003: [Noip模拟题]寻找羔羊
这里可以复制样例: 样例输入: agnusbgnus 样例输出: 6 这里是链接:[入门OJ]2003: [Noip模拟题]寻找羔羊 这里是题解: 题目是求子串个数,且要求简单去重. 对于一个例子(a ...
- 9.9 NOIP模拟题
9.9 NOIP模拟题 T1 两个圆的面积求并 /* 计算圆的面积并 多个圆要用辛普森积分解决 这里只有两个,模拟计算就好 两圆相交时,面积并等于中间两个扇形面积减去两个三角形面积 余弦定理求角度,算 ...
- NOIP模拟题17.9.26
B 君的任务(task)[题目描述]与君初相识,犹如故人归.B 君看到了Z 君的第一题,觉得很难.于是自己出了一个简单题.你需要完成n 个任务,第i 任务有2 个属性ai; bi.其中ai 是完成这个 ...
- noip模拟题题解集
最近做模拟题看到一些好的题及题解. 升格思想: 核电站问题 一个核电站有N个放核物质的坑,坑排列在一条直线上.如果连续M个坑中放入核物质,则会发生爆炸,于是,在某些坑中可能不放核物质. 任务:对于给定 ...
随机推荐
- .DS_Store的说明
今天清理电脑时,突然发现好像有文件的地方都会出现一个.DS_Store文件,今天有时间,索性就查了一下,并做总结发表一篇吧,怕有什么影响,并未真正实施,仅仅供自己收藏,仅供大家参考. DS_ ...
- Fiddler基本用法:手机抓包1
Fiddler基本用法以及如何对手机抓包 一.Fiddler是什么? ·一种Web调试工具. ·可以记录所有客户端和服务器的http和https请求. ·允许监视.设置断点.修改输入输出数据. 官方文 ...
- 将 Oracle VirtualBox 中运行的虚拟机导入 VMware Fusion、Workstation 或 Player
1.从virtualbox种导出电脑为 .ova格式镜像 要导入 Oracle VirtualBox 中运行的虚拟机,必须将该虚拟机从 VirtualBox 导出到开放虚拟化格式存档(.ova 文件) ...
- mysql ab主从复制出错及解决过程
一.mysql主从服务器报错描述:Slave_IO_Running=NO,Slave_SQL_Running=YES,Last_Errno=0 mysql slave stop ; mysql sla ...
- [HDU2196]Computer(DP)
传送门 题意 给出一棵树,求离每个节点最远的点的距离 思路 对于我这种菜鸡,真是难啊. 每个点的距离它最远的点,除了在它子树中的,还有在它子树之外的,所以这几个状态都得表示出来. 我们能够很简单的求出 ...
- restful(3):认证、权限、频率 & 解析器、路由控制、分页、渲染器、版本
models.py中: class UserInfo(models.Model): name = models.CharField(max_length=32) psw = models.CharFi ...
- codevs1154 能量项链
题目描述 Description 在Mars星球上,每个Mars人都随身佩带着一串能量项链.在项链上有N颗能量珠.能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数.并且,对于相邻的两颗珠子 ...
- ajax分页查询信息的通用方法
1.页面准备分页的表格与分页div 同时需要在查询条件表单中准备隐藏当前页与页大小的文本框 <div class="container-fluid"> <div ...
- Linux下汇编语言学习笔记25 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- CTO是有门槛的 我眼中真正优秀CTO应具备五大素质
最近几个月,不断有人找我推荐CTO人选,这两年互联网创业和创投实在是太火爆了,全民创业,创业项目井喷,一下子发现CTO不够用了,全行业缺CTO,到处都在找CTO.说实话,我自己也没有CTO存货,CTO ...