码迷,mamicode.com
首页 > 其他好文 > 详细

C - The Number Of Good Substrings CodeForces - 1217C

时间:2019-10-02 00:54:54      阅读:99      评论:0      收藏:0      [点我收藏+]

标签:png   amp   class   数值   typedef   ber   def   bit   int   

技术图片

 

 

技术图片

 

 


#include <bits/stdc++.h> using namespace std; typedef long long ll; /* 给你一个字符串只有0和1,问你有多少个子串满足长度等于该子串的二进数值 开始我不知道如何暴力,后来想直接借助前面求得二进制值来往下求 但是还是不可以,tle 现在的思路是,直接找1的位置,然后求他左边有多少前导0,以此1往后延伸,不够就用前导0,因为要枚举所有1 所以不会有遗漏,而且从1开始的吗所以最多往后延伸18位1<<18大于它的长度了 */ const int maxn=2e5+10; int dis=18; char s[maxn]; int main() { int t; scanf("%d",&t); while(t--) { scanf("%s",s); int sum=0; int len=strlen(s); int pre=0; for(int i=0; i<len; i++) { if(s[i]==0) pre++; else { int r=i; int cnt=1; for(int j=0; j<dis; j++) { if(cnt<=pre+(r-i+1)) sum++; if(r==len-1) break; cnt=cnt*2+(s[++r]-0); } pre=0; } } printf("%d\n",sum); } return 0; }

 

C - The Number Of Good Substrings CodeForces - 1217C

标签:png   amp   class   数值   typedef   ber   def   bit   int   

原文地址:https://www.cnblogs.com/zhangzhenjun/p/11616332.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!