博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
whust #0.1 I - Laughing Out Loud
阅读量:5278 次
发布时间:2019-06-14

本文共 2333 字,大约阅读时间需要 7 分钟。

I - Laughing Out Loud
Time Limit:1000MS     Memory Limit:524288KB     64bit IO Format:%I64d & %I64u
Submit     

Description

standard input/output 

Little Toojee was a happy go lucky boy. He seemed to find most, if not all, things funny. One day he read a word and started laughing a lot. Turns out that the word consisted only of the letters L and O. Whenever he saw the subsequence LOL’ in the word, he laughed for 1 second. Given t strings, find out for how long Toojee laughed on seeing each string.

Input

The first line contains t queries. This is followed by t lines each containing one string S. String S consists only of capital alphabets.

Output

Output for each string on a new line.

Constraints

  •  ≤ t ≤ 10
  •  ≤ |S| ≤ 105

Sample Input

Input
2 LOL LOLOL
Output
1 4

Hint

Test1: On observation, we can tell that there is only 1 occurrence of LOL.

Test2: Let the string be 0-indexed and let V = {

a, b, c} denote the indices that make up the string LOL”, where a is index of the 1st L’, b is index of the O’ and c is the index of the 2nd L’. So, V can be {0, 1, 2}, {2, 3, 4}, {0, 1, 4} and {0, 3, 4}. We see that there are 4 occurrences of the string “LOL”.

又是求有多少种组合的题.

和上次cf那道求等比数列的非常像.

1 /************************************************************************* 2     > File Name: code/whust/#0.1/II.cpp 3     > Author: 111qqz 4     > Email: rkz2013@126.com  5     > Created Time: 2015年08月09日 星期日 16时00分44秒 6  ************************************************************************/ 7  8 #include
9 #include
10 #include
11 #include
12 #include
13 #include
14 #include
15 #include
16 #include
17 #include
18 #include
19 #include
20 #define y0 abc111qqz21 #define y1 hust111qqz22 #define yn hez111qqz23 #define j1 cute111qqz24 #define tm crazy111qqz25 #define lr dying111qqz26 using namespace std;27 #define REP(i, n) for (int i=0;i
>T;35 string st;36 while (T--)37 {38 cin>>st;39 int len = st.length();40 LL p=0,q=0;41 LL ans = 0 ;42 for ( int i = 0 ; i < len ; i ++)43 {44 if (st[i]=='L')45 {46 p++;47 ans = ans + q;48 }49 else50 {51 q = q+ p; //p为L的个数,q表示前面有"LO"组合的个数52 }53 }54 cout<
<
View Code

 

转载于:https://www.cnblogs.com/111qqz/p/4715312.html

你可能感兴趣的文章
iOS-程序启动原理和UIApplication
查看>>
mysql 8.0 zip包安装
查看>>
awk 统计
查看>>
模板设计模式的应用
查看>>
实训第五天
查看>>
平台维护流程
查看>>
2012暑期川西旅游之总结
查看>>
12010 解密QQ号(队列)
查看>>
2014年辛星完全解读Javascript第一节
查看>>
装配SpringBean(一)--依赖注入
查看>>
java选择文件时提供图像缩略图[转]
查看>>
方维分享系统二次开发, 给评论、主题、回复、活动 加审核的功能
查看>>
Matlab parfor-loop并行运算
查看>>
string与stringbuilder的区别
查看>>
2012-01-12 16:01 hibernate注解以及简单实例
查看>>
iOS8统一的系统提示控件——UIAlertController
查看>>
PAT甲级——1101 Quick Sort (快速排序)
查看>>
python创建进程的两种方式
查看>>
1.2 基础知识——关于猪皮(GP,Generic Practice)
查看>>
迭代器Iterator
查看>>