#424 Div2 C

题意

给出 k 个分数,初始分数未知,按顺序把这 k 个分数加到初始分数上,已知 n 个加入分数后的结果(无序),问初始分数有多少种可能。

分析

也就是说这 n 个结果,它们之间的差是确定的(排序之后作差),对 k 个分数求前缀和,分别枚举每一个数作为起点,是否能找到后面的数使得最后的数列数之间的差与 n 个结果的差相同。

code

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXN = 3000;
int a[MAXN], b[MAXN];
set<int> S;
int main() {
int n, k;
cin >> n >> k;
for(int i = 0; i < n; i++) {
cin >> a[i];
if(i) {
a[i] += a[i - 1];
}
S.insert(a[i]);
}
for(int i = 0; i < k; i++) {
cin >> b[i];
}
sort(a, a + n);
sort(b, b + k);
int ans = 0;
for(int i = 0; i + k <= n; i++) {
if(i && a[i] == a[i - 1]) continue;
int st = a[i];
int p = 1;
for(int j = 1; j < k; j++) {
int x = b[j] - b[j - 1];
st += x;
if(!S.count(st)) {
p = 0;
break;
}
}
ans += p;
}
cout << ans << endl;
return 0;
}

#424 Div2 C的更多相关文章

  1. #424 Div2 E

    #424 Div2 E 题意 给出一个 n 个数的数列,从前往后取数,如果第一个数是当前数列的最小值,则取出,否则将它放到数列尾端,问使数列为空需要多少步操作. 分析 用数据结构去模拟. 线段树维护区 ...

  2. Codeforces Round #424 Div2 E. Cards Sorting

    我只能说真的看不懂题解的做法 我的做法就是线段树维护,毕竟每个数的顺序不变嘛 那么单点维护 区间剩余卡片和最小值 每次知道最小值之后,怎么知道需要修改的位置呢 直接从每种数维护的set找到现在需要修改 ...

  3. codeforces round #424 div2

    A 暴力查询,分三段查就可以了 #include<bits/stdc++.h> using namespace std; ; int n, pos; int a[N]; int main( ...

  4. #424 Div2 Problem C Jury Marks (二分 && 暴力 && std::unique && 思维)

    题目链接 :http://codeforces.com/contest/831/problem/C 题意 :选手有一个初始积分,接下来有k个裁判为他加分或减分(时间顺序给出),然后告诉你n(1< ...

  5. bc#54 div2

    用小号做的div2 A:竟然看错了排序顺序...白白WA了两发 注意读入一整行(包括空格):getline(cin,st) [gets也是资瓷的 #include<iostream> us ...

  6. $('div a') 与$('div>a'),.div+.div2与.div~.div2

    $('div a'):div标签下所有层次a元素的jquery对象 $('div>a'):div标签下子元素层次a元素的jquery对象 <body> <div class=' ...

  7. SRM 657 DIV2

    -------一直想打SRM,但是感觉Topcoder用起来太麻烦了.题目还是英文,不过没什么事干还是来打一打好了.但是刚注册的号只能打DIV2,反正我这么弱也只适合DIV2了.. T1: 题目大意: ...

  8. CodeForces Round 192 Div2

    This is the first time I took part in Codeforces Competition.The only felt is that my IQ was contemp ...

  9. Codeforce Round #211 Div2

    真的是b到不行啊! 尼玛C题一个这么简单的题目没出 aabbccddee 正确的是aabccdee 我的是   aabcdee 硬是TM的不够用,想半天还以为自己的是对的... A:题... B:题. ...

随机推荐

  1. 孤荷凌寒自学python第二十天python的匿名函数与偏函数

    孤荷凌寒自学python第二十天python的匿名函数与偏函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) Python为使函数的使用更加方便高效,可以使用两种特殊的函数简化语句书写. 一 ...

  2. (原) Unreal搬山-引言(图多慎)

    @author:白袍小道 扯淡:(图多) 何为搬山,这里借了剑来少年郎一句.(若有同道中人,甚是开心,开心的很) 江湖岂能没前辈) (江湖很大,足够你浪) (刺客信条 \荒野 \神秘海域 \死亡空间 ...

  3. JSP/Servlet Web 学习笔记 DayFive

    ServletConfig <只对当前Servlet有效> (1)在Web容器初始化Servlet实例时,都会为这个Servlet准备一个唯一的ServletConfig实例(俗称Serv ...

  4. 【转】PHP的执行原理/执行流程

    简介 先看看下面这个过程: 我们从未手动开启过PHP的相关进程,它是随着Apache的启动而运行的: PHP通过mod_php5.so模块和Apache相连(具体说来是SAPI,即服务器应用程序编程接 ...

  5. RabbitMQ高可用镜像队列

    ## RabbitMQ高可用镜像队列 在分布式系统中,通常使用多个术语来标识主要副本和辅助副本.本指南通常使用"主"来引用队列的主要副本,而对于辅助副本则使用"镜像&qu ...

  6. mongo基本命令

    > show dbs    -- 查看数据库列表 > use admin   --创建admin数据库,如果存在admin数据库则使用admin数据库 > db   ---显示当前使 ...

  7. Heine-Borel定理

    前:开始学数学..来写写理解和补充吧.. 书:M.A.Armstrong著<Basic Topology> Heine-Borel定理:实轴上闭区间是紧集. 证法(1)延伸法: 思想 闭区 ...

  8. mysql case when使用记录

    两种实现方式 第一种,CASE后面跟字段,当等于WHEN后面的值时,输出指定的数据 SELECT CASE gc.cat_id THEN '台球' THEN '羽毛球' ELSE '其它' END A ...

  9. libaio.so.1: cannot open shared object file

    <pre code_snippet_id="275763" snippet_file_name="blog_20140404_1_5530152" nam ...

  10. TemplateBinding和Binding

    TemplateBinding是Binding的一个轻量级版本,它失去了成熟版本Binding的很多功能,比如继承内容引用(inheritence context referencing),Relat ...