0421 & SX2016
山西省选...这个省...不算强吧...然而就是这么腊鸡题目还是wa得一无是处...怎么办啊怎么办啊...无处拯救青春和未来啊...
T1:
POI2004原题 BZOJ1524
n<=16.这不是一眼 撞鸭吗...然而我怎么打炸了呢...看了一眼标算跟我枚举的方式有点不一样不过感觉更靠谱的样子...然而第一眼看一句话居然看不懂...
连枚举子集都忘了QAQ
for x = S; x ;x = S&(x-1);
T2:
打表找规律= =...
没取模!!!!!!日!!!!!!!!!
/*=================================
# Created time: 2016-04-21 10:09
# Filename: sequence.cpp
# Description:
=================================*/
#define me AcrossTheSky&HalfSummer11
#include <cstdio>
#include <cmath>
#include <ctime>
#include <string>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm> #include <set>
#include <stack>
#include <queue>
#include <vector> #define lowbit(x) (x)&(-x)
#define Abs(x) ((x) > 0 ? (x) : (-(x)))
#define FOR(i,a,b) for((i)=(a);(i)<=(b);(i)++)
#define FORP(i,a,b) for(int i=(a);i<=(b);i++)
#define FORM(i,a,b) for(int i=(a);i>=(b);i--)
#define ls(a,b) (((a)+(b)) << 1)
#define rs(a,b) (((a)+(b)) >> 1)
#define getlc(a) ch[(a)][0]
#define getrc(a) ch[(a)][1] #define maxn 300005
#define maxm 2000005
#define INF 1070000000
#define mod 1000000007
using namespace std;
typedef long long ll;
typedef unsigned long long ull; template<class T> inline
void read(T& num){
num = 0; bool f = true;char ch = getchar();
while(ch < '0' || ch > '9') { if(ch == '-') f = false;ch = getchar();}
while(ch >= '0' && ch <= '9') {num = num * 10 + ch - '0';ch = getchar();}
num = f ? num: -num;
}
int outs[100];
template<class T> inline
void write(T x){
if (x==0) {putchar('0'); puts(""); return;}
if (x<0) {putchar('-'); x=-x;}
int num=0;
while (x){ outs[num++]=(x%10); x=x/10;}
FORM(i,num-1,0) putchar(outs[i]+'0'); puts("");
}
/*==================split line==================*/
ll n;
struct Matrix{
ll s[2][2];
void clear(){memset(s,0,sizeof(s));}
}f,a;
Matrix operator *(Matrix a,Matrix b){
Matrix c; c.clear();
for (int i=0;i<2;i++)
for (int j=0;j<2;j++)
for (int k=0;k<2;k++)
c.s[i][j]+=((a.s[k][j]%mod)*(b.s[i][k]%mod))%mod,c.s[i][j]%=mod;
return c;
}
int main(){
freopen("sequence.in","r",stdin);
freopen("sequence.out","w",stdout);
f.s[0][0]=1,f.s[0][1]=0,f.s[1][0]=0,f.s[1][1]=0;
a.s[0][0]=2,a.s[0][1]=1,a.s[1][0]=1,a.s[1][1]=0;
read(n);
if (n==0){
write(0);
return 0;
}
n--;
for(;n;n>>=1,a=a*a) if(n&1) f=f*a;
write(f.s[0][0]);
}
T3:
显然新加串是原串一个前缀,搞一棵Trie,hash一下....然而为什么我BZ上过了考试的时候没过呢...
/*=================================
# Created time: 2016-04-21 10:09
# Filename: sequence.cpp
# Description:
=================================*/
#define me AcrossTheSky&HalfSummer11
#include <cstdio>
#include <cmath>
#include <ctime>
#include <string>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm> #include <set>
#include <stack>
#include <queue>
#include <vector> #define lowbit(x) (x)&(-x)
#define Abs(x) ((x) > 0 ? (x) : (-(x)))
#define FOR(i,a,b) for((i)=(a);(i)<=(b);(i)++)
#define FORP(i,a,b) for(int i=(a);i<=(b);i++)
#define FORM(i,a,b) for(int i=(a);i>=(b);i--)
#define pb push_back
#define ls(a,b) (((a)+(b)) << 1)
#define rs(a,b) (((a)+(b)) >> 1)
#define getlc(a) ch[(a)][0]
#define getrc(a) ch[(a)][1] #define maxn 2000005
#define maxm 100005
#define INF 1070000000
using namespace std;
typedef long long ll;
typedef unsigned long long ull; template<class T> inline
void read(T& num){
num = 0; bool f = true;char ch = getchar();
while(ch < '0' || ch > '9') { if(ch == '-') f = false;ch = getchar();}
while(ch >= '0' && ch <= '9') {num = num * 10 + ch - '0';ch = getchar();}
num = f ? num: -num;
}
int outs[100];
template<class T> inline
void write(T x){
if (x==0) {putchar('0'); puts(""); return;}
if (x<0) {putchar('-'); x=-x;}
int num=0;
while (x){ outs[num++]=(x%10); x=x/10;}
FORM(i,num-1,0) putchar(outs[i]+'0'); puts("");
}
/*==================split line==================*/
const ll base=17;
int n,cnt=1,now; ll tmp;
int len[maxn],sum[maxn],ord[maxn],ch[maxn][26];
ull hash[maxn],p[maxn];
vector<char> s[maxn];
void insert(int x){
if (!ch[now][x]) ch[now][x]=++cnt;
now=ch[now][x];
tmp=tmp*base+x+1;
}
int main(){
freopen("string.in","r",stdin);
freopen("string.out","w",stdout);
p[0]=1; FORP (i,1,2000003) p[i]=p[i-1]*base;//,write(p[i]);
read(n);
FORP(i,1,n){
char c;
read(len[i]);
FORP(j,0,len[i]-1)
s[i].pb(getchar());
now=1,tmp=0;
FORP(j,0,len[i]-1) insert(s[i][j]-'a');
sum[now]++;ord[now]=i;hash[i]=tmp;
}
ll ans=0;
FORP(i,1,n){
now=1;
FORP(j,0,len[i]-1){
int x=s[i][j]-'a';
now=ch[now][x];
if (sum[now] &&
hash[ord[now]]*p[len[i]]+hash[i]==
hash[i]*p[len[ord[now]]]+hash[ord[now]]) ans+=sum[now];
}
}
ans=ans*2-n;
write(ans);
return 0;
}
T4:
打了个暴力这次暴力居然没出错...正解还没去看挖个坑>_<...Orz分块过的大神犇
0421 & SX2016的更多相关文章
- 0421 实验二Step2-FCFS调度
一.目的和要求 1. 实验目的 (1)加深对作业调度算法的理解: (2)进行程序设计的训练. 2.实验要求 用高级语言编写一个或多个作业调度的模拟程序. 单道批处理系统的作业调度程序.作业一投入运行, ...
- 技术笔记:Indy控件发送邮件
工作中有个需求需要发送邮件,因为使用的delphi6,所以自然就选择了indy组件,想想这事挺简单的.实现的过程倒是简单,看着Indy的demo很快就完了,毕竟也不是很复杂的功能. 功能要求: 1.压 ...
- 微软移动 Nokia Lumia SensorCore SDK 介绍及上手体验
早在今年的BUILD大会上,诺基亚就宣布了SensorCore以及它的部分演示.今天,它终于面世了,大家可以去Building Apps for Windows 上查看具体介绍,或者也可以去Nokia ...
- JS base64 加密和 后台 base64解密(防止中文乱码)
直接上代码 1,js(2个文件,网上找的) 不要觉的长,直接复制下来就OK //UnicodeAnsi.js文件 //把Unicode转成Ansi和把Ansi转换成Unicode function ...
- tcpdump抓SQL[转]
转自:http://www.cnblogs.com/LMySQL/p/5060604.html 前言:假设如果有个服务器几十个链接突然达到上千个链接,show processlist,general_ ...
- linux权限补充:rwt rwT rws rwS 特殊权限
众所周知,Linux的文件权限如: 777:666等,其实只要在相应的文件上加上UID的权限,就可以用到加权限人的身份去运行这个文件.所以我们只需要将bash复制出来到另一个地方,然后用root加上U ...
- grub paramiter & menu.list
在Linux中,给kernel传递参数以控制其行为总共有三种方法: 1.build kernel之时的各个configuration选项. 2.当kernel启动之时,可以参数在kernel被GRUB ...
- 基于nodejs实现js后端化处理
今天D哥给我提了个问题,"用php执行过js没"?咋一听,没戏~~毕竟常规情况下,js是依赖浏览器运行的.想在php后端采集的同时利用js运行结果并传递给php使用,没戏! 然后回 ...
- smali语法中文版
作者:Gabor Paller 翻译:YULIANGMAX v1.0 表中的vx.vy.vz表示某个Dalvik寄存器.根据不同指令可以访问16.256或64K寄存器. 表中lit4.lit8. ...
随机推荐
- 复选框css
input, select, button, textarea{ -webkit-appearance:none; }该属性会导致复选框失去选择效果
- 001_SPL工作中总结
一.SPL字段搜索中value带双引号和不带双引号的区别 如:iis.cs_uri_stem:\/api\/Purchase\/Common\/* AND logtype:iis 和iis.cs_ur ...
- 【Kubernetes】K8S 网络隔离 方案
参考资料: K8S-网络隔离参考 OpenContrail is an open source network virtualization platform for the cloud. – Kub ...
- 基础知识《十》unchecked异常和checked异常
运行时异常在运行期间才能被检查出来,一般运行期异常不需要处理.也称为unchecked异常.Checked异常在编译时就能确定,Checked异常需要自己处理. checked 异常也就是我们经常遇到 ...
- js加载完所有的图片,适合电子相册哦~~~~
有些时候要一口气加载完所有的图片,所以代码就要这么写.... var imgArray = [ 'http://s16.mogucdn.com/p1/160202/upload_ifqwcmlcmyy ...
- caffe_实战之两个简单的例子(物体分类和人脸检测)
一.物体分类: 这里使用的是caffe官网中自带的例子,我这里主要是对代码的解释~ 首先导入一些必要的库: import caffe import numpy as np import matplot ...
- 让“是男人就下到100层”在Android平台上跑起来
原工程:https://github.com/jeekun/DownFloors 移植后的代码:HelloCpp.zip 移植后的APK:HelloCpp.apk 说明:(cocos2d-x版本是“ ...
- 《Java编程思想》学习笔记(二)——类加载及执行顺序
<Java编程思想>学习笔记(二)--类加载及执行顺序 (这是很久之前写的,保存在印象笔记上,今天写在博客上.) 今天看Java编程思想,看到这样一道代码 //: OrderOfIniti ...
- Android JNI总结
@Dlive 0x01 JNI介绍 JNI是Java Native Interface的缩写,JNI不是Android专有的东西,它是从Java继承而来,但是在Android中,JNI的作用和重要性大 ...
- tp框架实现验证码
今天来看一个小插件. tp框架是怎么实现验证码的. 又到了我们千篇一律的时候了,首先呢,先做一个用来显示的html界面名为:zhuce.html <!DOCTYPE html PUBLIC &q ...