佳木斯集训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> ...
随机推荐
- 2018.10.20 2018NOIP冲刺之酒厂选址
题目传送门 明显能够看出有一个建图求路程的优化 然而发现10000*10000爆空间QAQ 为了做一些初始化方面的优化 我们发现了一个叫做前缀和的东西 可以在环上查到两个之间的最短距离 同时还要做一些 ...
- scrapy基础知识之将item 通过pipeline保存数据到mysql mongoDB:
pipelines.py class xxPipeline(object): def process_item(self, item, spider): con=pymysql.connect(hos ...
- C语言实现-航空订票系统(飞机订票系统)
开发环境:CodeBlocks 开发语言:C 实现功能:登录,订票,退票 数据存储:文本读写 涉及文件: 相关文件下载: 码云:https://gitee.com/ikaros-521/c_pro ...
- Innovus教程 - Flow系列 - MMMC分析环境的配置概述(理论+实践+命令)
本文转自:自己的微信公众号<集成电路设计及EDA教程> <Innovus教程 - Flow系列 - MMMC分析环境的配置概述(理论+实践+命令)> 轻轻走过,悄悄看过,无 ...
- 前端从零开始学习Graphql
学习本姿势需要电脑装有node,vue-cli相关环境,以及要有node,express,koa,vue相关基础 本文相关demo的github地址: node服务:https://github.co ...
- js 控制文本框输入要求
把输入框中 输入的字符串含有中文逗号 改成 英文逗号 举例: <input type="text" id="keywords" style="w ...
- Discuz ML! V3.X 代码注入漏洞
Discuz ML! V3.X 代码注入漏洞 前言 Discuz!ML是一个由CodersClub.org创建的多语言,集成,功能齐全的开源网络平台,用于构建像"社交网络"这样的互 ...
- 腾讯云tomcat问题
Ubuntu启动特别慢 1.在$JAVA_HOME/jre/lib/security/java.security中,把securerandom.source=file:/dev/urandom替换成s ...
- Python-入门学习
开始学习Python(围绕windows 平台上),记录一些点滴的知识点,也希望可以和大家交流分享. ================================================= ...
- DvaJS构建配置React项目与使用
DvaJS构建配置React项目与使用 一,介绍与需求分析 1.1,介绍 dva 首先是一个基于redux 和redux-saga的数据流方案,然后为了简化开发体验,dva 还额外内置了react-r ...