2017 icpc 西安网络赛
F. Trig Function

样例输入
2 0
2 1
2 2
样例输出
998244352
0
2
找啊找啊找数列和论文。cosnx可以用切比雪夫多项式弄成(cosx)的多项式,然后去找到了相关的公式:



然后写个快速幂预处理啥的,很快就解决了~
#include<bits/stdc++.h>
#define clr(x) memset(x,0,sizeof(x))
#define clr_1(x) memset(x,-1,sizeof(x))
#define LL long long
#define mod 998244353
using namespace std;
LL jc[],djc[];
LL n,m,k,ans;
LL quick_pow(LL x,LL n)
{
LL res=;
x=(x%mod+mod)%mod;
while(n)
{
if(n&)
res=res*x%mod;
x=x*x%mod;
n>>=;
}
return res;
} void init()
{
jc[]=jc[]=;
for(int i=;i<=;i++)
jc[i]=(jc[i-]*i)%mod;
djc[]=quick_pow(jc[],mod-);
for(int i=;i>=;i--)
djc[i]=djc[i+]*(i+)%mod;
djc[]=;
return ;
}
int main()
{
init();
while(scanf("%lld%lld",&n,&m)!=EOF)
{
if(m>n || m< || (n-m)%!=)
{
printf("0\n");
continue;
}
ans=(n-m)/%==?-:;
ans=(ans*djc[m]*n%mod+mod)%mod;
if(n-m<=n+m-)
for(LL i=n-m+;i<=n+m-;i+=)
ans=ans*(i%mod)%mod;
else
for(LL i=n-m;i>n+m-;i-=)
ans=ans*quick_pow(i,mod-)%mod;
printf("%lld\n",ans);
}
return ;
}
E。 Maximum Flow

样例输入
2
样例输出
1
这题可以用最大流最小割推推,但我~找规律的2333。
首先是2^k的n(默认n--了),那么所有的从0出来的流都能到达终点,也就是流量为(n+1)*n/2。然后写个最大流打个表,然后将i和i-1作差。可以发现在2^k~2^(k+1)的数中,差为2(2^0+1)每隔2个出现,差为5(2^2+1)每隔4个出现,17(2^4+1)每隔8个出现。。。依此类推。然后你懂得~。
#include<bits/stdc++.h>
#define clr(x) memset(x,0,sizeof(x))
#define LL long long
#define mod 1000000007
using namespace std;
LL quick_pow(LL x, LL n) {
LL res = ;
x=(x%mod+mod)%mod;
while(n) {
if(n&)
res=res*x% mod;
n >>=;
x =x*x% mod;
}
return res;
}
int main()
{
LL n,m,q,l,ans,k,kk;
int t;
while(scanf("%lld",&n)!=EOF)
{
t=;
n--;
m=n;
while(m)
{
t++;
m>>=;
}
q=;
m=(q<<(t-));
ans=(m%mod)*((+m)%mod)%mod;
ans=ans*quick_pow(,mod-)%mod;
n-=m;
kk=;
k=;
while(k<=n+kk)
{
ans=(ans%mod+(((n+kk)/k)%mod)*((kk%mod)*(kk%mod)%mod+)%mod)%mod;
if(k==LLONG_MAX)
break;
kk=k;
k<<=;
}
printf("%lld\n",ans);
}
return ;
}
C.Sum

样例输入
1
1
样例输出
89999999999999999999999999
输入啥都输出233个9就行了。k个9无论乘多少数位和仍是k*9。
#include<bits/stdc++.h>
#define clr(x) memset(x,0,sizeof(x))
#define clr_1(x) memset(x,-1,sizeof(x))
#define LL long long
using namespace std;
int main()
{
LL n,m,k;
int T;
scanf("%d",&T);
while(T--)
{
scanf("%lld",&n);
for(int i=;i<=;i++)
printf("");
printf("\n");
}
return ;
}
B.Coin

样例输入
2
2 1 1
3 1 2
样例输出
500000004
555555560
23333,n重伯努利实验概率分布题。
设q=1-p,p为事件概率。
Y为出现偶数次的概率。

所以Y=(1+(q-p)^n)/2,求个逆元啥的,快速幂啥的就能做出来了。
#include<bits/stdc++.h>
#define LL long long
#define mod 1000000007
using namespace std;
LL quick_pow(LL x, LL n) {
LL res = ;
x=(x%mod+mod)%mod;
while(n) {
if(n&)
res=res*x% mod;
n >>=;
x =x*x% mod;
}
return res;
}
int main()
{
LL p, q;
LL n;
int t;
scanf("%d", &t);
while(t --) {
scanf("%lld%lld%lld",&p, &q, &n);
LL a=quick_pow(p,mod-);
a=(a**q)%mod;
a=(-a+mod)%mod;
a=quick_pow(a,n)%mod;
a=(a+)%mod;
LL b=quick_pow(,mod-)%mod;
a=(a*b)%mod;
printf("%lld\n", (a%mod+mod)%mod);
}
}
2017 icpc 西安网络赛的更多相关文章
- 2017年icpc西安网络赛 Maximum Flow (找规律+数位dp)
题目 https://nanti.jisuanke.com/t/17118 题意 有n个点0,1,2...n-1,对于一个点对(i,j)满足i<j,那么连一条边,边权为i xor j,求0到n- ...
- 2017 icpc 沈阳网络赛
cable cable cable Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- 2017 ICPC西安区域赛 A - XOR (线段树并线性基)
链接:https://nanti.jisuanke.com/t/A1607 题面: Consider an array AA with n elements . Each of its eleme ...
- 2017 ACM-ICPC 西安网络赛 F.Trig Function Chebyshev多项式
自己太菜,数学基础太差,这场比赛做的很糟糕.本来想吐槽出题人怎么都出很数学的题,现在回过头来想还是因为自己太垃圾,竞赛就是要多了解点东西. 找$f(cos(x))=cos(nx)$中$x^m$的系数模 ...
- 2017 icpc 南宁网络赛
2000年台湾大专题...英语阅读输入输出专场..我只能说很强势.. M. Frequent Subsets Problem The frequent subset problem is define ...
- hdu5017:补题系列之西安网络赛1011
补题系列之西安网络赛1011 题目大意:给定一个椭球: 求它到原点的最短距离. 思路: 对于一个椭球的标准方程 x^2/a^2 + y^2/b^2 +z^2/c^2=1 来说,它到原点的最短距离即为m ...
- 2018 ICPC 沈阳网络赛
2018 ICPC 沈阳网络赛 Call of Accepted 题目描述:求一个算式的最大值与最小值. solution 按普通算式计算方法做,只不过要同时记住最大值和最小值而已. Convex H ...
- 2018 ICPC 徐州网络赛
2018 ICPC 徐州网络赛 A. Hard to prepare 题目描述:\(n\)个数围成一个环,每个数是\(0\)~\(2^k-1\),相邻两个数的同或值不为零,问方案数. solution ...
- hdu6212[区间dp] 2017青岛ACM-ICPC网络赛
原题: BZOJ1032 (原题数据有问题) /*hdu6212[区间dp] 2017青岛ACM-ICPC网络赛*/ #include <bits/stdc++.h> using name ...
随机推荐
- 【洛谷 P2756】 飞行员配对方案问题(二分图匹配,最大流)
题目链接 这不是裸的二分图匹配吗? 而且匈牙利算法自带记录方案.. 但既然是网络流24题,那就用网络流来做吧. 具体就是从源点向左边每个点连一条流量为1的边,两边正常连边,流量都是一,右边所有点向汇点 ...
- chrome表单自动填充导致input文本框背景变成偏黄色问题
你曾遇到过吗? 困扰宝宝好久的问题,本以为是什么插件导致的,结果是chrome浏览器自动填充文本时默认的样式,搜嘎. 一.修改自动填充input文本框背景色: 使用以下代码 可以设置自己的想要的默认文 ...
- HDU 2199 二分
我们可以发现这个函数是单增的,那么这样二分就好了. 反思:刚转C++,不会用scanf读入实数.(scanf("%lf",&y)) //By BLADEVIL #inclu ...
- 探索ReactNative应用
本篇文章是我看AC2016腾讯前端技术交流大会后写的.写的不好,大家见谅啊. 一,什么是ReactNative? 简单来说就是可以用javascript来写APP了,而且性能还不错. 用JS写的话已经 ...
- perl6 拖库脚本
#注入点: #https://fei.sg/shop/products.php?action=content&id=-23 #check mysql column_name of the sq ...
- linux dpm机制分析(下)【转】
转自:http://blog.csdn.net/lixiaojie1012/article/details/23707901 1 设备注册到dpm_list路径 (Platform_devi ...
- tenda t402 家庭版 有线路由器
使用快速向导: adsl(拨号)+用户名+密码 路由器后DMZ主机设置简单图解:http://wenku.baidu.com/view/94b9f0768e9951e79b8927ce.html 可 ...
- Win7蓝屏代码0X0000007B可能是SATA mode问题
Win7蓝屏代码0X0000007B可能是硬盘模式的问题,我进入BIOS把SATA的mode从Enhanced改为Compatible(及IDE兼容模式)结果系统可以顺利启动没有问题. 从 ...
- Python简单的制作图片验证码
-人人可以学Python--这里示范的验证码都是简单的,你也可以把字符扭曲 人人可以学Python.png Python第三方库无比强大,PIL 是python的一个d第三方图片处理模块,我们也可以使 ...
- .net页面实时预览图片
<script type="text/javascript"> //获取上传图片的本地路径 function getPath(obj){ if(obj) { if(na ...