题目描述有点小坑,ij其实是没有先后的 并且y并不一定存在于a中 判断y的个数和所给数组无关 对于2 - 7来说 中间满足%2==0的y一共有3个 2 4 6 这样

可以看出对于每个数字a 都能够二分出来一个范围resl resr 这个范围内的数字到a 之间一共有k个x的倍数

然后就是查找一下a数组中有多少数字在resl和resr中间 也是二分寻找

L n,ds,num;

L a[100050] ;

L fin(L l,L r,L ds) {
L num1=r/ds;
L num2=l/ds;
L nu = num1-num2;
if(l%ds==0)nu++;
return nu;
} L low(L x) {
L l=1,r=n;L res=-1;
while(l<=r){
L mid=(l+r)/2;
if(a[mid] >= x){
res=mid;r=mid-1;
} else l = mid + 1 ;
}
return res ;
}
L upp(L x){
L l=1,r=n;L res=-1;
while(l<=r){
L mid=(l+r)/2;
if(a[mid] <= x){
res=mid;l=mid+1;
} else r=mid-1 ;
}
return res ;
} L check(L ql,L qr) {
L l = low(ql);
L r = upp(qr);
if(l==-1||r==-1) return 0 ;
if(l>r) return 0 ;
return r-l+1;
} int main () {
while(scanf("%lld%lld%lld" , &n,&ds,&num) != EOF) {
rep(i,1,n) a[i] = read() ;
sort(a+1,a+1+n) ;
L ans = 0 ;
rep(i,1,n) {
L x = a[i] ;
L l=x,r=1e18 ;
L resl=-1,resr=-1;
while(l<=r){
L mid=(l+r)/2;
L nu = fin(x,mid,ds) ;
if(nu == num) {
resl=mid;
r=mid-1;
}
else if(nu < num) {
l=mid+1;
}
else {
r=mid-1;
}
}
l=x,r=1e18 ;
while(l<=r){
L mid=(l+r)/2;
L nu = fin(x,mid,ds) ;
if(nu == num) {
resr=mid;
l=mid+1;
}
else if(nu < num) {
l=mid+1;
}
else {
r=mid-1;
}
}
if(resl==-1||resr==-1) continue ;
L z = check(resl,resr) ;
ans += z ;
}
cout << ans << endl ;
}
}

因为室友天天晚上唱歌打牌到一两点。。第二天又要早起去训练赛或者上课。。

然后这两天都很困。。题看不下去。。头晕晕

还记得南宁网络赛之前一夜未眠,很困而又睡不着,到了比赛的时候却一点都感觉不到

就像在网吧连续通宵好几天的人,他们其实应该也是很困的,然而等到游戏开始,就一点也感觉不到了

但是对于身体的消耗是仍然存在的,连续几天的脑力消耗还是很累的

还是要好好调整一下啊。。

Codeforces Round #448 (Div. 2) B的更多相关文章

  1. Codeforces Round #448(Div.2) Editorial ABC

    被B的0的情况从头卡到尾.导致没看C,心情炸裂又掉分了. A. Pizza Separation time limit per test 1 second memory limit per test ...

  2. Codeforces Round #448 (Div. 2)C. Square Subsets

    可以用状压dp,也可以用线型基,但是状压dp没看台懂... 线型基的重要性质 性质一:最高位1的位置互不相同 性质二:任意一个可以用这些向量组合出的向量x,组合方式唯一 性质三:线性基的任意一个子集异 ...

  3. Codeforces Round #448 (Div. 2) B. XK Segments【二分搜索/排序/查找合法的数在哪些不同区间的区间数目】

    B. XK Segments time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  4. Codeforces Round #448 (Div. 2) A. Pizza Separation【前缀和/枚举/将圆(披萨)分为连续的两块使其差最小】

    A. Pizza Separation time limit per test 1 second memory limit per test 256 megabytes input standard ...

  5. Codeforces Round #366 (Div. 2) ABC

    Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...

  6. Codeforces Round #354 (Div. 2) ABCD

    Codeforces Round #354 (Div. 2) Problems     # Name     A Nicholas and Permutation standard input/out ...

  7. Codeforces Round #368 (Div. 2)

    直达–>Codeforces Round #368 (Div. 2) A Brain’s Photos 给你一个NxM的矩阵,一个字母代表一种颜色,如果有”C”,”M”,”Y”三种中任意一种就输 ...

  8. cf之路,1,Codeforces Round #345 (Div. 2)

     cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅.....   ...

  9. Codeforces Round #279 (Div. 2) ABCDE

    Codeforces Round #279 (Div. 2) 做得我都变绿了! Problems     # Name     A Team Olympiad standard input/outpu ...

随机推荐

  1. less-符号之逗号,空格,父级选择器

    Less符号 逗号 example: .test() { box-shadow+: inset 0 0 10px #555; } .study { .test(); box-shadow+: 0 0 ...

  2. Scala学习之Tuple、Map、Array

    1.Tuple Tuple的中文意思是元组,它的定义是不需要方法. 例如:val tup=(25,”Tuple”,”Map”,”Array”). 值得注意的是,Tuple在进行索引的时候,与我们平时所 ...

  3. C++ primer记录

    关于C++编程风格,可参考:Google 开源项目风格指南 第一章:开始 1. 头文件:由于嵌套包含文件的原因,一个头文件可能会被多次包含在一个源文件中.条件指示符可防止这种头文件的重复处理,例如:# ...

  4. Android 短信箱操作

    package blackice.android.product; import java.sql.Date; import java.text.SimpleDateFormat; import ja ...

  5. c++用vector创建二维数组

    1 vector二维数组的创建和初始化 std::vector <int> vec(10,90); //将10个一维动态数组初始为90std::vector<std::vector& ...

  6. 全面解析JavaScript中“&&”和“||”操作符(总结篇)

    1.||(逻辑或), 从字面上来说,只有前后都是false的时候才返回false,否则返回true. ? 1 2 3 4 alert(true||false); // true alert(false ...

  7. JS产品分类列表练习

    CSS: ;;} ul,li{list-style: none;} body{color: #666;background: #f5f5f5;} a{text-decoration: none;col ...

  8. 枢轴点(Pivot Point)系统

    Pivot Point是日内交易方法,非常简单实用,是一套非常“单纯”的阻力支持体系,大概是10年前一个做期货的高手发明的方法,至今已经广泛的用在股票.期货.国债.指数等高成交量的商品上.经典的Piv ...

  9. HDU2571:命运(简单dp)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=2571 没什么好说的,不过要处理好边界. 代码如下: #include <iostream> # ...

  10. [转]Asp.net MVC 中Ajax的使用

    Asp.net MVC 抛弃了Asp.net WebForm那种高度封装的控件,让我们跟底层的HTML有了更多的亲近.可以更自由.更灵活的去控制HTML的结构.样式和行为.而这点对于Ajax的应有来说 ...