T1还是个找规律啊,记下b的个数,然后直接*2%10000000009就好了

 #include <bits/stdc++.h>
#define mo 1000000007
using namespace std;
char s[];
long long b,o;
long long ans;
int main()
{
cin>>s;
int length=strlen(s);
for(int i=length-;i>=;i--)
{
if(s[i]=='a')
o++;
}
if(o==length)
{
cout<<"-1"<<endl;
return ;
}
for(int i=length-;i>=;i--)
{
if(s[i]=='b')
{
b++;
continue;
}
ans+=b;
b=b*%mo;
}
printf("%lld",ans%mo);
}

T2比较好玩,我打挂了

本来的思路是不断的记二进制数,最多5次,转化五次,五个数组,然后一一比对的,理论可过,但是我挂了

正解居然是个DP???

 #include <bits/stdc++.h>
#define ll long long
#define mo 1000000007
using namespace std;
ll b,k,sum,now;
int p,cnt;
ll ans[];
char a[];
ll dp[][];
void solve(int x)
{
int point=x;
int num=;
while(x)
{
if(x%==)
num++;
x/=;
}
ans[point]=ans[num]+;
}
int main()
{
cin>>a>>k;
int length=strlen(a);
if(k==)
{
cout<<length-<<endl;
return ;
}
if(k==)
{
cout<<<<endl;
return ;
}
if(k>)
{
cout<<<<endl;
return ;
}
k--;
for(int i=;i<=;i++)
solve(i);
for(int i=;i<length;i++)
dp[i][]=;
for(int i=;i<length;i++)
dp[i][i]=;
for(int i=;i<length;i++)
for(int j=;j<=i;j++)
{
dp[i][j]=(dp[i-][j]+dp[i-][j-])%mo;
}
for(int i=;i<length;i++)
{
if(a[i]=='')
continue;
for(int j=;j<length-i;j++)
{
if(ans[j+now]==k)
{
sum+=dp[length-i-][j];
sum=sum%mo;
}
}
now++;
}
if(ans[now]==k)
sum++;
cout<<sum%mo<<endl;
return ;
}

T3部分分的做法是树的直径,理论可得50,但是我又挂了...

现在正解也不太会,代码先空着2333

最新文章

  1. linux 字符设备驱动写法
  2. 在运行Hibernate Hello World程序的时候,抛如下错误: view plain Exception in thread &quot;main&quot; org.hibernate.exception.LockAcquisitionException 解决方法
  3. Cassandra对读写请求的处理机制
  4. CCommandManager 类
  5. Java数据结构和算法之链表
  6. 浅谈WebService返回数据效率对比
  7. spoj 7001. Visible Lattice Points GCD问题 莫比乌斯反演
  8. VS2013开发Android App 环境搭建
  9. Wamp,XAMPP 无法启动,端口未占用的故障处理
  10. 谈谈GUI的配色和字体选择
  11. WPF bitmap转bitmapimage 使用 CreateBitmapSourceFromHBitmap内存泄漏
  12. Fourier分析基础(一)&mdash;&mdash;Fourier级数
  13. Order笔记-数据库创建
  14. HDU-6060 RXD and dividing
  15. Cygwin配置总结
  16. 第三章 C#程序结构[3.2 选择结构的应用(Windows窗体应用程序)(四)]
  17. Attention Please
  18. 分布式系统唯一ID生成方案汇总【转】
  19. tornado上传大文件以及多文件上传
  20. 获取bean的两种方式

热门文章

  1. HDU 6058:Kanade&#39;s sum(思维)
  2. Codeforces 755E:PolandBall and White-Red graph(构造+思维)
  3. Git使用小技巧之多个远程仓库
  4. 深入学习Spring框架(一)- 入门
  5. django执行mysql恢复的时候出现“The request&#39;s session was deleted before the request completed. The user may have logged out in a concurrent request, for example.”
  6. HTML连载22-序选择器(下)
  7. 使用GDAL实现DEM的地貌晕渲图(一)
  8. C++学习书籍推荐《C++程序设计原理与实践》下载
  9. Java平台调用Python平台已有算法(附源码及解析)
  10. 详叙BeanWrapper和PropertyDescriptor