A9308 | Diverse Substrings
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
String diversity is the number of symbols that occur in the string at least once. Diversity of $s$ will be denoted by $d(s)$ . For example , $d$ ("aaa")=1, $d$ ("abacaba")=3.
Given a string $s$ , consisting of lowercase Latin letters. Consider all its substrings. Obviously, any substring diversity is a number from 1 to $d(s)$ . Find statistics about substrings diversity: for each $k$ from 1 to $d(s)$ , find how many substrings of $s$ has a diversity of exactly $k$ .
Given a string $s$ , consisting of lowercase Latin letters. Consider all its substrings. Obviously, any substring diversity is a number from 1 to $d(s)$ . Find statistics about substrings diversity: for each $k$ from 1 to $d(s)$ , find how many substrings of $s$ has a diversity of exactly $k$ .
输入格式
The input consists of a single line containing $s$ . It contains only lowercase Latin letters, the length of $s$ is from 1 to $3·10^{5}$ .
输出格式
Print to the first line the value $d(s)$ . Print sequence $t_{1},t_{2},...,t_{d(s)}$ to the following lines, where $t_{i}$ is the number of substrings of $s$ having diversity of exactly $i$ .
输入输出样例
输入 #1
abca
输出 #1
3 4 3 3
输入 #2
aabacaabbad
输出 #2
4 14 19 28 5
Consider the first example.
We denote by $s(i,j)$ a substring of "abca" with the indices in the segment $[i,j]$ .
- $s(1,1)=$ "a", $d($ "a" $)=1$
- $s(2,2)=$ "b", $d($ "b" $)=1$
- $s(3,3)=$ "c", $d($ "c" $)=1$
- $s(4,4)=$ "a", $d($ "a" $)=1$
- $s(1,2)=$ "ab", $d($ "ab" $)=2$
- $s(2,3)=$ "bc", $d($ "bc" $)=2$
- $s(3,4)=$ "ca", $d($ "ca" $)=2$
- $s(1,3)=$ "abc", $d($ "abc" $)=3$
- $s(2,4)=$ "bca", $d($ "bca" $)=3$
- $s(1,4)=$ "abca", $d($ "abca" $)=3$
Total number of substring with diversity 1 is 4, with diversity 2 equals 3, 3 diversity is 3.
We denote by $s(i,j)$ a substring of "abca" with the indices in the segment $[i,j]$ .
- $s(1,1)=$ "a", $d($ "a" $)=1$
- $s(2,2)=$ "b", $d($ "b" $)=1$
- $s(3,3)=$ "c", $d($ "c" $)=1$
- $s(4,4)=$ "a", $d($ "a" $)=1$
- $s(1,2)=$ "ab", $d($ "ab" $)=2$
- $s(2,3)=$ "bc", $d($ "bc" $)=2$
- $s(3,4)=$ "ca", $d($ "ca" $)=2$
- $s(1,3)=$ "abc", $d($ "abc" $)=3$
- $s(2,4)=$ "bca", $d($ "bca" $)=3$
- $s(1,4)=$ "abca", $d($ "abca" $)=3$
Total number of substring with diversity 1 is 4, with diversity 2 equals 3, 3 diversity is 3.
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted