bzoj刷水
因为最近的生活太颓废总是不做题而被老师D了一番, 所以今天晚上到bzoj上去刷了几道水题。。。。。
bzoj 4320: ShangHai2006 Homework
题目大意
维护一个支持两个操作的集合:
1) 插入一个数x
2) 询问集合中所有数中 mod x 最小是多少
解题思路
似乎log家族没有什么好的办法解决这道题?
考虑 sqrt() 的方法。
当询问 x <= sqrt(m) 的时候, 直接存一下就可以了。
当询问 x > sqrt(m) 的时候,把n分成 n / x 块, 每一块单独考虑。
这时对于每一块, 我们需要求出的就是 >= (i * x) 的所有数中最小的那个。
填一个log会爆掉的。但是如果倒着处理, 每一次询问的就是 x 右面第一个没有被染色的点, 其实就是 疯狂的馒头这道题, 用并查集搞一搞就可以了。

memset(tmp, memset(ans, ;i<=n;i++){
]; scanf(,&xx[i]);
la[i]=s[]- bin[xx[i]]++;
;j<=sq;j++)tmp[j]=min(tmp[j],xx[i]%j);
} }
;i<=N;i++);
fat[N+]=N+;
;i--){
;
} ;j<=N;j+=xx[i])
}
}
;i<=n;i++) ;
}
bzoj 4318:OSU!
题目大意
问一个长度为n, 第i为有pi的概率为1的01串期望的价值是多少。
一个01串的价值定义为它的所有极长子只含1串的长度的立方的和。
解题思路
尝试计算每一位对答案的贡献f(i)。 设li 为 i 前面的极长"1"串的长度
显然 f(i) = p[i] * (3 * li2 + 3 * li + 1)。
只要算出 li2 和 li 的期望, 就可以算出 f(i) 的期望了。
注意 li2 的期望并不等于 (li的期望)2 , 要单独存一个数来转移。
虽然恶意缩了缩空格,,但代码真的本来就很短很漂亮。。

;i<=n;i++){
scanf(*x2+*xx+);
x2=x*(x2+*xx+);
xx=x*(xx+);
}
printf(;
}
bzoj 4302: Hdu 5301 Buildings
题目大意
(上面这段是copy下来的。。)
解题思路
构造题。首先旋转一下令 n <= m,显然, 最后答案中覆盖的块一定都是 1 * x 的
其实整个问题的答案就是覆盖了障碍点的 上, 下, 左, 右 四个点的四个块的长度。
这时候情况数就很少了, 分类讨论一下就好了。
1)(障碍物)上面的点向上, 下面的点向下, 这时候剩下的点分两种情况: 1, 全部按照 (n + 1) / 2的方式竖着排列 2, 所有左边的点向左连, 右边的点向右连(其实第2种情况更优当且仅当是一个边长为奇数的正方形且障碍点在中间)
2)(障碍物)上面的点和下面的点都向 左边和右边中更近的那一边连 , 这时候剩下的点(就是障碍物左边的所有点或者是右边的所有点)分两种情况: 1, 全部按照 (n + 1) / 2的方式竖着排列 2, 所有点都向左边/ 右边连。
好了, 其实一共只有四小类。
代码还是炒鸡短。。。

#include <cstring>
#include <cmath>
#include <algorithm>
#include <cstdio>
) / , max(y - , m - y - )), max(x - , n - x));
ans = min(ans, max(min(y, m - y + ), min((n + ) / , max(y - , m - y))));
printf(;
}
bzoj 4305: 数列的GCD
题目大意
1. 1≤bi≤m
2. gcd(b1,b2,...,bn)=d
3. ∑ni=1[ai≠bi]=k
解题思路
因为 300000 以内的数的因子个数最多也就140个, 所以这道题怎么搞一搞都可以。
然后就是一些基本数论知识也没什么好说的。对于每一个i ,只要求出a[]中有多少个数是i的倍数。对于不是i的倍数的那些数, 贡献的方案数是 数量(n/i) , 对于是i的倍数的那些数, 贡献的是 从那么多数中选取(n-k)个数, 选出来的数每个有1种取法,其它的每个有(n/i)-1种取法。
代码有点丑就不贴了(竟然比绝大多数代码都长简直不能忍!!!一定是我的算法太丑了QAQ)
bzoj 3884: 上帝与集合的正确用法
题目大意

1. 1≤bi≤m
2. gcd(b1,b2,...,bn)=d
3. ∑ni=1[ai≠bi]=k
解题思路
我们都知道欧拉定理: an ≡ an mod φ(p) mod p (gcd(a, p) = 1)
然而它竟然还有一个拓展:
然后这道题就可以随便做了。设答案为 f(x)
则 f(x) = 2f(phi(x)) + phi(x) mod x
于是就可以递归地解决啦

];
;
) ret = (ll)ret * x % mod;
x = (ll)x * x % mod; k >>= ;
} }
) f[x] = mypow(, calc(phi[x]) + phi[x], x);
}
scanf( ; i <= t; i ++) scanf( ; i <= mx; i ++){
;
; j <= pp && (ll)i * prim[j] <= mx; j ++){
isp[i * prim[j]] = ; phi[i * prim[j]] = phi[i] * (prim[j] - );
) {phi[i * prim[j]] = phi[i] * prim[j]; }
}
memset(f, -, (mx + ) * );
f[] = ;
; i <= t; i ++) printf( ;
}
bzoj刷水的更多相关文章
- bzoj 刷水
bzoj 3856: Monster 虽然是sb题,,但是要注意h可能<=a,,,开始忘记判了WA得很开心. #include <iostream> #include <cst ...
- [暑假的bzoj刷水记录]
(这篇我就不信有网站来扣) 这个暑假打算刷刷题啥的 但是写博客好累啊 堆一起算了 隔一段更新一下. 7月27号之前刷的的就不写了 , 写的累 代码不贴了,可以找我要啊.. 2017.8.27upd ...
- USACO 刷水
BZOJ 1666 水.. BZOJ 1579 分层图最短路. BZOJ 1782 从一开始若某头牛停在U,那么U的子树的时间都会加一用BIT维护DFS序就行了 BZOJ 1572 贪心+堆 排序后查 ...
- [洛谷U22157]刷水题(数位dp)(hash)
题目背景 做正经题是不可能做正经题的,这辈子都不可能做正经题的,毒瘤题又不会做毒瘤题,就是水题这种东西,才维持了蒟蒻的信心: 题目描述 这里有N+1 道水题,编号分别为0 ~N+1 ,每道水题都有它自 ...
- 【BZOJ】1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏(刷水严重)
http://www.lydsy.com/JudgeOnline/problem.php?id=1666 这种我就不说了.. #include <cstdio> #include < ...
- NOIP前刷水行动
2016.11.15 BZOJ1009:DP+矩阵乘法+KMP BZOJ1898:矩阵乘法 BZOJ4101:贪心,考虑我们往右边撞的时候,我们会向左边冲 ,于是枚举答案点利用一个指针计算即可! 20 ...
- 【刷水】之USACO2008资格赛(Bzoj1599-1603)
做之前真是没想到有这么水>.< 但做了还是发上来吧>.< 就当是刷一刷AC量&1A率什么的>.< Bzoj1599: [Usaco2008 Oct]笨重的石 ...
- BZOJ刷题指南(转)
基础(65) 巨水无比(4):1214.3816:2B题:1000A+B:2462:输出10个1 模拟/枚举/暴力(15):4063傻子模拟:1968小学生暴力:1218前缀和暴力:3856读英文:4 ...
- Luogu USACO Training 刷水记录
开个坑记录一下刷USACO的Training的记录 可能会随时弃坑 只有代码和做法简述 可能没有做法简述 [USACO1.1]你的飞碟在这儿Your Ride Is He… 模拟,细节已忘 #incl ...
随机推荐
- storyboard连线容易出现的问题
- 连接的方法代码被删掉,但是连线没有去掉 - 可能会出现方法找不到错误 - unrecognized selector sent to instance- 连接的属性代码被删掉,但是连线没有去掉 - ...
- ASP.NET AJAX调用 WebService
同事的代码,帮忙修改的,为了实现页面跳转回来后,状态的保持,Service 使用了Session. 主要的JS $.ajax({ url: "/ws/StaffInfo.asmx/Note& ...
- 公众平台关注用户达到5万即可开通流量主功能 可以推广APP应用
今天微信公众平台发布发布了一些更新,公众帐号的关注用户达到5万,即可开通流量主功能,之前的是要求10万粉丝,这是一个微信开放的信号.广告主可推广苹果商店应用或腾讯开放平台应用.新增卡片和图文广告规格. ...
- PHP面向对象(OOP)编程入门教程
面向对象编程(OOP)是我们编程的一项基本技能,PHP5对OOP提供了良好的支持.如何使用OOP的思想来进行PHP的高级编程,对于提高 PHP编程能力和规划好Web开发构架都是非常有意义的.下面我们就 ...
- 【荐】怎么用PHP发送HTTP请求(POST请求、GET请求)?
file_get_contents版本: <?php /** * 发送post请求 * @param string $url 请求地址 * @param array $post_data pos ...
- mrjob 使用 mongoldb 数据源【转】
最近做的事情是用mrjob写mapreduce程序,从mongo读取数据.我的做法很容易也很好懂,因为mrjob可以支持sys.stdin的读取,所以我考虑用一个python程序读mongo中的数据, ...
- nodejs开发指南demo
由于手上拿的教程是2012年出版的,到如今已历经N个版本,所以在写代码时报过一堆错.这是解决错误后的版本. 源码下载
- 利用Photos 框架搭建美图秀秀相册选择器
简介:Photos框架是iOS8.0后推出的一个新的用于对系统相册进行相关操作的,在iOS8.0之前,开发中只能使用AssetsLibrary框架来访问移动设备的图片库.本文中不再对AssetsLib ...
- 修改iphone联系人头像
如何通过代码来修改iphone联系人头像 使用如下代码: UIImage *image=[UIImage imageNamed:@"star_full.png"]; NSData ...
- ASP.NET MVC 插件化机制
概述 nopCommerce的插件机制的核心是使用BuildManager.AddReferencedAssembly将使用Assembly.Load加载的插件程序集添加到应用程序域的引用中.具 体实 ...