Y-25 Number of every character
来源:互联网 发布:it论坛 编辑:程序博客网 时间:2024/06/05 19:59
Description
The look and say sequence is defined as follows. Start with any string of digits as the first element in the sequence. Each subsequent element is defined from the previous one by "verbally" describing the previous element. For example, the string 122344111 can be described as "one 1, two 2's, one 3, two 4's, three 1's". Therefore, the element that comes after 122344111 in the sequence is 1122132431. Similarly, the string 101 comes after 1111111111. Notice that it is generally not possible to uniquely identify the previous element of a particular element. For example, a string of 112213243 1's also yields 1122132431 as the next element.
Input
The input consists of a number of cases. The first line gives the number of cases to follow. Each case consists of a line of up to 1000 digits.
Output
For each test case, print the string that follows the given string.
Sample Input
3
122344111
1111111111
12345
Sample Output
1122132431
101
1112131415
解题思路:
统计每个字符连续出现的个数,不要当字符改变时,对于新出现的字符重新统计,
定义string t;用t[0]来存放当前字符,如果循环时,循环到的字符与当前字符相同,
则另存放字符个数的整数加1,如果循环到的字符与当前字符不同,则输出,此
时出现新字符,另存放字符个数的整数赋值1,并更改当前字符,
细节处理:
对于循环到最后一个字符时,直接输出,然后当前循环结束
代码:
#include<iostream>
#include<queue>
#include<map>
#include<string>
using namespace std;
int main()
{
int n,i;
cin>>n;
for(i=0;i<n;i++)
{
string s,t;
cin>>s;
t=s[0];
int j,temp=0;
for(j=0;j<s.size();j++)
{
if(s[j]==t[0])
{
temp++;
if(j==s.size()-1) cout<<temp<<t[0];
}
else
{
cout<<temp<<t[0];
temp=1;
t[0]=s[j];
if(j==s.size()-1)
cout<<temp<<t[0];
}
}
cout<<endl;
}
return 0;
}
The look and say sequence is defined as follows. Start with any string of digits as the first element in the sequence. Each subsequent element is defined from the previous one by "verbally" describing the previous element. For example, the string 122344111 can be described as "one 1, two 2's, one 3, two 4's, three 1's". Therefore, the element that comes after 122344111 in the sequence is 1122132431. Similarly, the string 101 comes after 1111111111. Notice that it is generally not possible to uniquely identify the previous element of a particular element. For example, a string of 112213243 1's also yields 1122132431 as the next element.
Input
The input consists of a number of cases. The first line gives the number of cases to follow. Each case consists of a line of up to 1000 digits.
Output
For each test case, print the string that follows the given string.
Sample Input
3
122344111
1111111111
12345
Sample Output
1122132431
101
1112131415
解题思路:
统计每个字符连续出现的个数,不要当字符改变时,对于新出现的字符重新统计,
定义string t;用t[0]来存放当前字符,如果循环时,循环到的字符与当前字符相同,
则另存放字符个数的整数加1,如果循环到的字符与当前字符不同,则输出,此
时出现新字符,另存放字符个数的整数赋值1,并更改当前字符,
细节处理:
对于循环到最后一个字符时,直接输出,然后当前循环结束
代码:
#include<iostream>
#include<queue>
#include<map>
#include<string>
using namespace std;
int main()
{
int n,i;
cin>>n;
for(i=0;i<n;i++)
{
string s,t;
cin>>s;
t=s[0];
int j,temp=0;
for(j=0;j<s.size();j++)
{
if(s[j]==t[0])
{
temp++;
if(j==s.size()-1) cout<<temp<<t[0];
}
else
{
cout<<temp<<t[0];
temp=1;
t[0]=s[j];
if(j==s.size()-1)
cout<<temp<<t[0];
}
}
cout<<endl;
}
return 0;
}
0 0
- Y-25 Number of every character
- CareerCup The number of pairs (x, y) of distinct elements with condition x + y <= Threshold
- Illegal pattern character 'Y'错误
- Write a method that counts the number of occurrences of a given character in a string
- Count the number of alphabets, spaces, digits and other characters in one line character
- Given an array of size N in which every number is between 1 and N, determine if there are any dupli
- print every bit of an integer
- Common Escape Character of URL
- The EOF character of C
- Y-25
- Y must be a vector or a character array
- ValueError: unsupported format character 'Y' (0x59) at index 70
- java.lang.IllegalArgumentException: Illegal pattern character 'Y' 解决办法
- Y must be a vector or a character array
- Character Functions & Number Functions & Date Functions
- [leetcode]25 Number of 1 Bits
- Solution of 1117. Eddington Number(25)
- Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets
- java 学习笔记1
- leetcode_67. Add Binary
- Android多线程的实现方式
- My Happiness is All 分锅记录
- 机器学习算法比较
- Y-25 Number of every character
- 【Java NIO的深入研究6】JAVA NIO之Scatter-Gather
- C#权威指南读书笔记-002
- Java中的抽象类与抽象方法
- 分布式系统数据一致性的6种方案(转)
- 北大 AI 公开课第4讲:吴甘沙-智能驾驶,有多少AI可以重来(新智元专访:中国Mobileye何在)
- PHP跳转之header函数
- Linux--C语言操作数据库(一)插入数据
- 论文阅读-《Training Region-based Object Detectors with Online Hard Example Mining》