BZOJ NOI十连测 第二测 T2



思路:20%可以搜索。。
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<iostream>
#include<time.h>
#define ll long long
const ll Mod=;
ll jc[],jcny[];
int n,m;
int read(){
char ch=getchar();int t=,f=;
while (ch<''||ch>''){if (ch=='-') f=-;ch=getchar();}
while (''<=ch&&ch<=''){t=t*+ch-'';ch=getchar();}
return t*f;
}
ll gcd(ll a,ll b){
if (b==) return a;
else return gcd(b,a%b);
}
void exgcd(ll a,ll b,ll &x,ll &y){
if (b==){
x=;
y=;
return;
}
exgcd(b,a%b,x,y);
ll t=x;
x=y;
y=t-a/b*y;
}
void init(){
jc[]=;
for (int i=;i<=;i++)
jc[i]=(jc[i-]*i)%Mod;
ll x,y;
exgcd(jc[],Mod,x,y);
jcny[]=x;
for (int i=;i>=;i--)
jcny[i]=(jcny[i+]*(i+))%Mod;
}
ll Pow(ll x,ll y){
ll res=;
while (y){
if (y%) res=(res*x)%Mod;
y/=;
x=(x*x)%Mod;
}
return res;
}
ll A(int n,int m){
return jc[n]*jcny[n-m];
}
ll C(int n,int m){
return (((jcny[m]*jcny[n-m])%Mod)*jc[n])%Mod;
}
bool superjudge(){
if (n==) {printf("1\n");return ;}
if (n==) {printf("%lld\n",(((*Pow(,m))%Mod+(*Pow(,m))%Mod)%Mod));return ;}
if (n==) {printf("%lld\n",((*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod)%Mod);return ;}
if (n==) {printf("%lld\n",((*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))+(*Pow(,m))%Mod));return ;}
if (n==) {printf("%lld\n",((*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod)%Mod);return ;}
if (n==) {printf("%lld\n",((*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod)%Mod);return ;}
if (n==) {printf("%lld\n",((*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m))%Mod+(*Pow(,m)))%Mod);return ;}
return ;
}
ll Rand(){
ll t=(ll)(rand()*rand())%Mod;
return t;
}
int main(){
freopen("dark.in","r",stdin);
freopen("dark.out","w",stdout);
srand(time(NULL));
int T=read();
init();
while (T--){
n=read();m=read();
if (n<=&&superjudge()) continue;
if (n==&&m==) printf("33703375\n");
else
printf("%lld\n",Rand());
}
}
40%算法

BZOJ NOI十连测 第二测 T2的更多相关文章
- BZOJ NOI十连测 第一测 T2
思路:看到这题,就感觉是一道很熟悉的题目: http://www.cnblogs.com/qzqzgfy/p/5535821.html 只不过这题的K最多可以到N,而且边权不再只是1,考试的时候yy了 ...
- BZOJ NOI十连测 第二测 T1
出题人居然是个哲学家.. 26%的程序,太SB了...本来我的想法也是二分+贪心,但是贪心是个怪怪的SX贪心.. #include<algorithm> #include<cstdi ...
- BZOJ NOI十连测 第一测 T1
思路:首先考虑t=1的情况,t等于1,那么所有位置的颜色相同,我们不用考虑概率的问题,那么,k+d*x在模d下都相等,我们考虑预处理一个数组s[i][j],代表d为i,起始位置为j的等差数列的和,这个 ...
- 痞子衡嵌入式:测一测i.MXRT1170 Raw NAND启动时间(从POR到进App的Reset_Handler)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是恩智浦i.MX RT1170 Raw NAND启动时间. 关于i.MXRT1170这颗划时代的MCU,痞子衡去年10月在其刚发布的时候, ...
- 「NOI十联测」深邃
「NOI十联测」深邃 要使得最大的连通块最小,显然先二分答案. 先固定1结点为根. 对于一个果实,显然是先处理子树中未分配的点,再向外延伸. 每个结点记录一个\(si[]\),表示子树中未分配的点数, ...
- 「NOI十联测」奥义商店
「NOI十联测」奥义商店 若lzz想花费最少的钱,那么显然要选择数目较少的颜色. 先考虑暴力的写法. 每次向两边统计,每个物品要求被买的概率可以由上一个物品推出. now=1;//now 被买概率 M ...
- 「NOI十联测」黑暗
「NOI十联测」黑暗 \(n\) 个点的无向图,每条边都可能存在,一个图的权值是连通块个数的 \(m\) 次方,求所有可能的图的权值和.(n≤30000,m≤15) 令\(ans[n][m]\)为n个 ...
- NOI十连测 第五测 T2
思路:考虑建立可持久化线段树,第一层维护的是i这个位置的next位置,第二层,维护的是接下来走这个字符会到哪个节点. 感觉很巧妙啊,不愧是Claris #include<algorithm> ...
- NOI十连测 第四测 T2
思路:线段树套可持久化treap,可持久化treap我还是第一次听说.. 改题的时候没看数据范围..乱开数组T_T #include<algorithm> #include<cstd ...
随机推荐
- 使用CURL发彩信,短信和进行多线程
短彩信发送 01 $xml_data = '<?xml version="1.0" encoding="UTF-8" standalone="y ...
- KEIL C51 Call Tree
KEIL中函数的调用在其帮助文档中有一个详细的解释,引用如下: The Call Tree The best way to demonstrate how the call tree is gener ...
- WINAPI大全~
http://www.alsprogrammingresource.com/win32_functions_g.html
- jquery第六期:位置选择器
<html> <head> <script type="text/javascript" src="jquery-1.10.1.js&quo ...
- Java内存回收(垃圾回收)机制总结
一.背景: Java程序员编写程序时,对于新建的对象,当不再需要此对象时,不必去释放这个对象所占用的空间,这个工作是由Java虚拟机自己完成的 ,即内存回收或垃圾回收. 二.如何知道一个对象所占用的空 ...
- Struts2源代码解读之Action调用
对于Struts2源代码的分析已经有些时日了,虽然网上有很多解读代码,不过自己还是写一个放上来,供大家参考一下. 解读过程: 直接在action类中打断点(包括构造函数和待执行方法)进行debug调试 ...
- C++字符串指针与字符数组的区别
今天发现这样一个问题 #include <iostream> using namespace std; int main() { ]; strcpy_s(ch1,");//编译通 ...
- hdu5772-String problem(最大权闭合子图问题)
解析: 多校标答 第一类:Pij 表示第i个点和第j个点组合的点,那么Pij的权值等于w[i][j]+w[j][i](表示得分)第二类:原串中的n个点每个点拆出一个点,第i个点权值为 –a[s[i]] ...
- 在O(1)时间内删除单链表结点
// 在O(1)时间内删除单链表结点 /* 思考: 很显然链表是一个节点地址不连续的存储结构 删除节点一般很容易会想到是修改p节点的前一个节点的next为p->next 然而除非是双向链表,否则 ...
- hdu 1561 The more, The Better_树状dp
题目链接 题意:给你一棵树,各个节点都有价值(除根节点),从根节点出发,选择m个节点,问最多的价值是多小. 思路:很明显是树状dp,遍历树时背包最优价值,dp[i][k]=max{dp[i][r]+d ...