【玲珑杯Round17】xjb总结
zcy真是垃圾,啥都不会的那种。
菜的不行。
这场手速上了三题,然后各种E被卡……
日个吗居然E不开栈,傻逼吧
有毒吧
来看题:
A.sqc给的我的神奇公式,gtmd居然能A?
#include<bits/stdc++.h>
using namespace std;
int n;double ans=;
int main(){
scanf("%d",&n);
for(int i=;i<n-;i++){
int j=(n-i)/,k=(n-i)-(n-i)/;
ans=max(ans,sin(i)+sin(j)+sin(k));
}
printf("%.9lf\n",ans);
}
B.小学生容斥,2^m次系列。
#include <stdio.h>
#include <iostream>
#include <algorithm>
#include <memory.h>
using namespace std;
typedef long long ll;
#define N 2
const int maxn=;
const int L=<<;
int a[maxn],T,n,m;ll f[L];int bin[L];
ll gcd(ll n,ll m){
return m?gcd(m,n%m):n;
}
inline ll lcm(ll n,ll m){return n/gcd(n,m)*m;}
void dfs(int stp,int s,ll w){
if (w>n) return ;
if (stp>m) {f[s]+=n/w;return ;}
dfs(stp+,s<<,w);
dfs(stp+,s<<|,lcm(w,a[stp]));
}
int main(){ for (int i=;i<L;i++) bin[i]=bin[i>>]+(i&);
for (scanf("%d",&T);T--;) {
memset(f,,sizeof f);
scanf("%d %d",&n,&m);
for (int i=;i<=m;i++) scanf("%d",&a[i]);
dfs(,,);ll ans=;
for (int j=;j<m;j++)
for (int i=;i<(<<m);i++)
if (((i>>j)&)==) f[i]-=f[i+(<<j)];
for (int i=;i<(<<m);i++)
if (bin[i]&) ans+=f[i];
printf("%lld\n",ans);
}
return ;
}
剩下就一堆不会……
Ctm烦得跟什么一样,Etm卡空间卡常数,还狗日的不开栈。
D裸FFT算下。
#include<bits/stdc++.h>
#define N 1000005
typedef long long ll;
using namespace std;
const double pi=acos(-);
struct E{
double x,y;
E (double x=,double y=):x(x),y(y){}
}a[N];
E operator+(const E &a,const E &b){return E(a.x+b.x,a.y+b.y);}
E operator-(const E &a,const E &b){return E(a.x-b.x,a.y-b.y);}
E operator*(const E &a,const E &b){return E(a.x*b.x-a.y*b.y,a.x*b.y+a.y*b.x);}
int n,m,l,q,L,nmax;
int r[N],c[N];ll ans[N];
void FFT(E *x,int k){
for (int i=;i<n;i++) if (i<r[i]) swap(x[i],x[r[i]]);
for (int i=;i<n;i<<=){
E wn(cos(pi/i),sin(pi*k/i));
for (int j=;j<n;j+=(i<<)){
E w(,),l,r;
for (int p=j;p<j+i;p++,w=w*wn){
l=x[p],r=x[p+i];
x[p]=l+w*r;
x[p+i]=l-w*r;
}
}
}
if (k==-) for (int i=;i<=n;i++) x[i].x/=n;
}
inline int read(){
int f=,x=;char ch;
do{ch=getchar();if(ch=='-')f=-;}while(ch<''||ch>'');
do{x=x*+ch-'';ch=getchar();}while(ch>=''&&ch<='');
return f*x;
}
int main(){
int T=read();
while(T--){
n=read();q=read();m=n;nmax=;L=;
memset(ans,,sizeof(ans));memset(a,,sizeof(a));
for(int i=;i<=m;i++)c[i]=read(),nmax=max(n,c[i]),a[c[i]].x++;
nmax*=;for (n=;n<=nmax;n<<=,L++);
for(int i=;i<n;i++)r[i]=(r[i>>]>>)|((i&)<<(L-));
FFT(a,);
for(int i=;i<=n;i++)a[i]=a[i]*a[i];
FFT(a,-);
for(int i=;i<=n;i++)ans[i]=(ll)(a[i].x+0.5);
for(int i=;i<=m;i++)ans[c[i]*]--;
for(int i=;i<=n;i++)ans[i]>>=;
for(int i=n;i>=;i--)ans[i]+=ans[i+];
for(int i=;i<=q;i++){
int k=read();printf("%lld\n",ans[k]);
}
}
}
好气啊,要是知道开栈我就能rank1了
巨气。
【玲珑杯Round17】xjb总结的更多相关文章
- 程设大作业xjb写——魔方复原
鸽了那么久总算期中过[爆]去[炸]了...该是时候写写大作业了 [总不能丢给他们不会写的来做吧 一.三阶魔方的几个基本定义 ↑就像这样,可以定义面的称呼:上U下D左L右R前F后B UD之间的叫E,LR ...
- hdu_5881_Tea(xjb猜)
题目链接:hdu_5881_Tea 题意: 有一壶水, 体积在 L 和 R 之间, 有两个杯子, 你要把水倒到两个杯子里面, 使得杯子水体积几乎相同(体积的差值小于等于1), 并且使得壶里剩下水体积不 ...
- hdu_5873_Football Games(xjb搞)
题目链接:hdu_5873_Football Games 题意: 有n个队,每个队都会给其他队打一场,赢一场得2分,平局得一分,输了不得分,然后给你全部比赛结束后的得分,问你是否有假分 题解: 可以知 ...
- hdu_5761_Rower Bo(xjb猜公式)
题目链接:hdu_5761_Rower Bo 题意: 让你求一个物理问题 题解: xjb猜公式,由题目样例可得,答案为8/7,然后我们可以xjb猜出公式为v1*a/(v1*v1-v2*v2),然后特判 ...
- “玲珑杯”ACM比赛 Round #12题解&源码
我能说我比较傻么!就只能做一道签到题,没办法,我就先写下A题的题解&源码吧,日后补上剩余题的题解&源码吧! A ...
- “玲珑杯”ACM比赛 Round #19题解&源码【A,规律,B,二分,C,牛顿迭代法,D,平衡树,E,概率dp】
A -- simple math problem Time Limit:2s Memory Limit:128MByte Submissions:1599Solved:270 SAMPLE INPUT ...
- “玲珑杯”ACM比赛 Round #19 B -- Buildings (RMQ + 二分)
“玲珑杯”ACM比赛 Round #19 Start Time:2017-07-29 14:00:00 End Time:2017-07-29 16:30:00 Refresh Time:2017-0 ...
- “玲珑杯”ACM比赛 Round #1
Start Time:2016-08-20 13:00:00 End Time:2016-08-20 18:00:00 Refresh Time:2017-11-12 19:51:52 Public ...
- 玲珑杯”ACM比赛 Round #15
手速狗从西安回来一只浑浑噩噩,好不容易迎来一场送饭比赛体验一把河南的优势,结果被高中生狂虐,无缘奖金..我的奖品梦就这样一次次被打破.... A -- Reverse the lights 最后半小时 ...
随机推荐
- 封装一个jquery库
现在Javascript库海量,流行的也多,比如jQuery,YUI等,虽然功能强大,但也是不万能的,功能不可能涉及方方面面,自己写一个的JS库是对这些的补充,很多也比较实用,把应用到项目中中去也比较 ...
- hdu 1150 Machine Schedule (二分匹配)
Machine Schedule Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- python中元组与小括号的关系
在学习Python 的时候.说到有两种数据类型,一种叫 列表,一种叫做元组,可以认为,元组是功能精简的列表.因为它少了列表很多功能.但是又有相识.定义他们的时候,主要是用中括号和小括号之分. 例如:定 ...
- [洛谷P2408]不同子串个数
题目大意:给你一个字符串,求其中本质不同的字串的个数 题解:同[洛谷P4070][SDOI2016]生成魔咒,只要最后再输出就行了 卡点:无 C++ Code: #include <cstdio ...
- [洛谷P4118][Ynoi2016]炸脖龙I([洛谷P3934]Nephren Ruq Insania)
题目大意:有$n$个数,每个数为$s_i$,两个操作: $1\;l\;r\;x:$表示将区间$[l,r]$内的数加上$x$ $2\;l\;r\;p:$表示求$s_l^{s_{l+1}^{^{s_{l+ ...
- BZOJ3771:Triple——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=3771 大意:给n把不同价值的斧子,从中选一把/两把/三把,所构成的每种价值和的可能情况有多少. 生 ...
- BZOJ2120:数颜色——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=2120 https://www.luogu.org/problemnew/show/P1903#su ...
- 阿里云学生机——Mysql配置---教小白入门篇
首先,我的学生机默认配置为:CentOS 7.2 64位 + Tomcat 8 + Jdk8 + MySQL5.7.16 扩展:Linux 如何查看 MySQL 版本号----使用命令 mysql - ...
- bzoj2330: [SCOI2011]糖果(差分约束)
差分约束裸题,a==b的话分别建a>=b a<=b的边就行.倒序加边不然会TLE是什么鬼 #include<iostream> #include<cstring> ...
- Codeforces Round #398 (Div. 2) A B C D 模拟 细节 dfs 贪心
A. Snacktower time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...