汕头市队赛 SRM16
T3
C-2 SRM 16
描述
给一个数列,给出两种数字, 询问在多少个非空区间中这两种数字出现次数相同。
输入格式
第一行:一个数字n,q,n表示数列长度,q表示q组询问
第二行n个数字表示数列A
接下来q行每行2个数字表示询问
输出格式
输出q行分别对应每个问题的答案
样例输入
2 1
1 2
1 2
样例输出
1
数据范围与约定
n <= 5000,q <= 10000 其他数字在int范围内
样例解释
只有区间[1,2]符合
——————————————————————————
因为 符合的状态就是 a.r-a.l=b.r-b.l
转换一下就是 a.r-b.r=a.l-b.l
然后我们记录一下差然后瞎jb搞就好了
#include<cstdio>
#include<cstring>
#include<algorithm>
#define LL long long
using namespace std;
const int M=1e4+,mod=;
int read(){
int ans=,f=,c=getchar();
while(c<''||c>''){if(c=='-') f=-; c=getchar();}
while(c>=''&&c<=''){ans=ans*+(c-''); c=getchar();}
return ans*f;
}
int n,q,k1,k2;
int s[M];
int f[*M];
int main()
{
n=read(); q=read();
for(int i=;i<=n;i++) s[i]=read();
for(int i=;i<=q;i++){
for(int i=;i<=*n;i++) f[i]=; f[n]=;
k1=read(); k2=read();
int cnt1=,cnt2=;
LL ans=;
for(int i=;i<=n;i++){
if(s[i]==k1) cnt1++;
if(s[i]==k2) cnt2++;
int now=cnt1-cnt2+n;
ans+=f[now];
f[now]++;
}
printf("%lld\n",ans);
}
return ;
}
C-3 SRM 16
描述
给一个数列, 询问对于在数列中出现过的数字种类集合S。对于所有的x属于S,y属于S,询问在数列中有多少个区间,x,y这两种数字出现次数相同,对于所有的询问求和后输出。
输入格式
第一行:一个数字n
第二行n个数字表示数列A
输出格式
输出1行表示问题的答案
样例输入
2
1 2
样例输出
7
数据范围与约定
n <= 8000, 其他数字在int范围内
样例解释
一共有三种不同的询问
A 询问1,1 共有3个区间
B 询问1, 2共有1个区间
C 询问2,2共有3个区间
—————————————————————————————
这道题就n^2枚举区间 然后记录每个点的出现次数 以及每种出现次数的
就好了
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<queue>
#define LL long long
using namespace std;
int read(){
int ans=,f=,c=getchar();
while(c<''||c>''){if(c=='-') f=-; c=getchar();}
while(c>=''&&c<=''){ans=ans*+(c-''); c=getchar();}
return ans*f;
}
const int M=1e4+;
int n,s[M],sq,ss[M];
LL h[M],f[M],ans,sum;
int main()
{
n=read();
for(int i=;i<=n;i++) s[i]=read(),ss[i]=s[i];
sort(ss+,ss++n);
sq=unique(ss+,ss++n)-ss-;
for(int i=;i<=n;i++) s[i]=lower_bound(ss+,ss++n,s[i])-ss;
for(int i=;i<=n;i++){
memset(h,,sizeof(h));
memset(f,,sizeof(f));
sum=sq*(sq+)/;
h[]=sq;
for(int j=i;j<=n;j++){
sum=sum-h[f[s[j]]]+h[f[s[j]]+]+;
ans+=sum;
h[f[s[j]]]--; h[f[s[j]]+]++;
f[s[j]]++;
}
}printf("%lld\n",ans);
return ;
}
汕头市队赛 SRM16的更多相关文章
- 汕头市队赛 SRM16 T2
描述 猫和老鼠,看过吧?猫来了,老鼠要躲进洞里.在一条数轴上,一共有n个洞,位置分别在xi,能容纳vi只老鼠.一共有m只老鼠位置分别在Xi,要躲进洞里,问所有老鼠跑进洞里的距离总和最小是多少. 输入格 ...
- 汕头市队赛 C KMP codeforces B. Image Preview
汕头市队赛题目传送门 codeforces题目传送门 这道题我的做法是 尝试先往左走然后往右走 或者先往右走然后往左走 然后注意一下枚举顺序就okay啦 #include<cstdio> ...
- 汕头市队赛SRM15
T1——czl SRM 15 众所周知,czl家养了一只可♂爱的***(已屏蔽),那只东西很贪吃,所以czl家很多零食仓库,然而这些仓库里有很多老鼠. 为了心爱的***,czl决定点燃纯艾条,用烟熏老 ...
- 汕头市队赛 SRM 07 D 天才麻将少女kpm
这道题放了很久还是回来补了 D 天才麻将少女KPM SRM 07 背景&&描述 天才麻将少女KPM立志要在日麻界闯出一番名堂. KPM上周叒打了n场麻将,但她这次又没控分,而且 ...
- 汕头市队赛SRM 20 T3 灵魂觉醒
背景 自从芽衣.布洛妮娅相继灵魂觉醒之后,琪亚娜坐不住了.自己可是第一个入驻休伯利安号的啊!于是她打算去找德丽莎帮忙,为她安排了灵魂觉醒的相关课程. 第一天,第一节课. “实现灵魂觉醒之前,你需要先将 ...
- 汕头市队赛SRM 20 T2不净的圣杯
不净的圣杯 SRM 20 背景 作为一张BUG级别的卡,官方打算把它修改得人畜无害一些…… 虽然名字还没想好,但是能力大概是对敌方所有单位造成d点伤害,d为自己牌组中所有卡的编号的最大公约数.这无疑是 ...
- 汕头市队赛SRM 20 T1魔法弹
T1 背景 “主角光环已经不能忍啦!” 被最强控制AP博丽灵梦虐了很长一段时间之后,众人决定联合反抗. 魂魄妖梦:“野怪好像被抢光了?” 十六夜咲夜:“没事,我们人多.” 然后当然是以失败告终了. 八 ...
- 汕头市队赛 SRM19 字符题
从天上掉下来了个这样的问题: 有一个字符串 从中选出两个子串 A,B,求 A+B可以构成的不同串的个数. 还想知道,这么多个串中字典序最大的那一个. 某人捡到了这个问题,并把它扔给了你. [输入] 一 ...
- 汕头市队赛 SRM 07 B 好玩的麻将
B 好玩的麻将 SRM 07 背景&&描述 天才麻将少女KPM立志要在日麻界闯出一番名堂. KPM上周又打了n场麻将,又控了分使得自己的排名是1..n的一个排列. 但她 ...
随机推荐
- 封装一个ExcelHelper,方便将Excel直接转成Datatable对象
public class ExcelHelper { /// <summary> /// Excel转换成DataTable /// </summary> /// <pa ...
- 每天一个Linux命令(12):su命令
su命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码. 语法: su(选项)(参数) 选项: -c<指令>或--command=<指令>:执行完指定 ...
- [OpenCV]DMatch类和KeyPoints类:特征点匹配
DMatch struct CV_EXPORTS_W_SIMPLE DMatch { CV_WRAP DMatch() : queryIdx(-), trainIdx(-), imgIdx(-), d ...
- OpenCV实现SIFT图像拼接源代码
OpenCV实现SIFT和KDtree和RANSAC图像拼接源代码,此源代码由Opencv2.4.13.6和VC++实现,代码本人已经调试过,完美运行,效果如附图.Opencv2.4.13.6下载地址 ...
- 为 Ubuntu/Anaconda/pip 添加国内下载源
背景 正在看 tensorflow-lite 压缩模型的部分,结果 tutorial 一上来就要卸旧版安装 tf-nightly (新版?反正小白下就vans了) 然而好不容易才编译好源码舍不得删.又 ...
- HDU 4735 Little Wish~ lyrical step~(DLX搜索)(2013 ACM/ICPC Asia Regional Chengdu Online)
Description N children are living in a tree with exactly N nodes, on each node there lies either a b ...
- 【Python】python中的装饰器——@
对装饰器本来就一知半解的,今天终于弄清楚了,Python中的装饰器是对装饰者模式的很好运用,简化到骨子里了. python中为什么需要装饰器,看这里:http://www.cnblogs.com/hu ...
- JS实现双击编辑可修改
需求描述:在一段文字处双击可以进行修改,也就是双击后创建输入框,输入内容,在输入框失去焦点后将输入的内容再以文字的形式显示出来,以下是html代码: 1 <fieldset> 2 < ...
- Kernel Mode, User Mode
之前关于kernel mode,user mode之间的切换,有个问题一直有些疑惑. 一个进程有没有办法,从user mode切换到kernel mode去执行自己的代码.我知道答案肯定是不行,但是为 ...
- HTML5表单提交与PHP环境搭建
PHP服务器使用xampp集成套件 路径 D:\xampp\htdocs\MyServer\index.php 访问 http://localhost/MyServer/index.php 能够正常显 ...