佳木斯集训Day6
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
佳木斯集训Day6的更多相关文章
- LOJ #6074. 「2017 山东一轮集训 Day6」子序列
#6074. 「2017 山东一轮集训 Day6」子序列 链接 分析: 首先设f[i][j]为到第i个点,结尾字符是j的方案数,这个j一定是从i往前走,第一个出现的j,因为这个j可以代替掉前面所有j. ...
- 佳木斯集训Day1
23333第一次写博客 其实在佳木斯集训之前我都已经两三个月没打代码了 在佳木斯的时候前几天真心手生,导致了前几次考试考的很差... D1的考试还是比较良心的,T1是一道大模拟,直接枚举最后几位是00 ...
- 2019暑期金华集训 Day6 杂题选讲
自闭集训 Day6 杂题选讲 CF round 469 E 发现一个数不可能取两次,因为1,1不如1,2. 发现不可能选一个数的正负,因为1,-1不如1,-2. hihoCoder挑战赛29 D 设\ ...
- 2019暑期金华集训 Day6 计算几何
自闭集训 Day6 计算几何 内积 内积不等式: \[ (A,B)^2\le (A,A)(B,B) \] 其中\((A,B)\)表示\(A\cdot B\). (好像是废话?) 叉积 \[ A\tim ...
- 考前停课集训 Day6 垒
Day 6 今天在家里的 家里蹲 其实是day7的时候想到要写day6了 草率补充一下 NOIP考前棕名退不掉咯 你觉得我还会打洛谷的题目吗? 依然退步 没用心 T1 分火腿 数论题 我感觉挺难的 T ...
- 2022寒假集训day6
day6上午还是做四道题T1区域[上机练习]1.编程计算由"*"号围成的下列图形的面积.面积计算方法是统计*号所围成的闭合曲线中水平线和垂直线交点的数目.如下图所示,在 10*10 ...
- 省队集训day6 C
Description 给定平面上的 N 个点, 其中有一些是红的, 其他是蓝的.现在让你找两条平行的直线, 使得在保证 不存在一个蓝色的点 被夹在两条平行线之间,不经过任何一个点, 不管是蓝色 ...
- 省队集训day6 B
一道AC自动机题···· 一定要把一个节点没有的儿子接到它fai的儿子,否则会卡到n^2的······· #include<cstdio> #include<iostream> ...
- 省队集训day6 A
code: #include<cstdio> #include<iostream> #include<cmath> #include<cstring> ...
随机推荐
- JAVA Stirng.format 使用理解
JAVA Stirng.format 使用理解前言:项目中需要对一些字符串处理发现format方法的神奇之处一.api才是王道第一种二参使用①public static String format(S ...
- Nginx代理和负载均衡实验
一.构建两个tomcat容器并启动 [root@localhost bin]# ps -ef|grep tomcat root : pts/ :: /usr/bin/java -Djava.util. ...
- NetCore 获取appsetting.json 文件中的配置
1. using Microsoft.Extensions.Configuration public class HomeController : Controller { public IConfi ...
- SQL Server 表结构操作
一.创建表 --直接定义主外键 create table wallet( ID ) primary key, ,) not null, Name ) default '余额', Member_ID ) ...
- springboot定时任务之旅
springboot定时任务 假设场景:单体应用的定时任务,假设我们已经有了一个搭建好的springboot应用,但是需要添加一个定时执行的部分(比如笔者遇到的是定时去请求一个接口数据来更新某个表), ...
- web应用分页
1. 场景描述 目前大部分的应用程序中都会用到分页功能,以便减少前端浏览器及后台服务器的压力,以及其他方面的考虑. (1)分页从概念上可分为逻辑分页和物理分页,逻辑分页主要是通过应用程序(前端或者后端 ...
- Spring+MyBatis时Access denied for user '高欢欢'@'localhost' (using password: YES)的异常解决方案
今天在做spring+mybatis整合的时候系统只要一运行就会报下面的错误,搞了几个小时硬是没有找的原因 警告: com.mchange.v2.resourcepool.BasicResourceP ...
- ServiceFabric极简文档-1.2 硬件环境.md
1. 一个C盘,100G,16G内存,2.5HZ2. 官网有推荐配置
- 启动Chrome时自动开启开发者模式
右键点击Google Chrome浏览器图标→属性,在目标里面加上参数--auto-open-devtools-for-tabs即可
- python安装及typora使用
第一章 环境搭建 1.1Python安装 1.1.1python官网www.python.org 1.1.2根据电脑系统选择下载 1.1.3确定电脑系统属性,此处我们以win10的64位操作系统为例 ...