CF 1095A Repeating Cipher

题目链接:http://codeforces.com/problemset/problem/1095/A
A. Repeating Cipher
time limit per test1 second
memory limit per test256 megabytes
inputstandard input
outputstandard output
Polycarp loves ciphers. He has invented his own cipher called repeating.

Repeating cipher is used for strings. To encrypt the string s=s1s2…sm (1≤m≤10), Polycarp uses the following algorithm:

he writes down s1 ones,
he writes down s2 twice,
he writes down s3 three times,

he writes down sm m times.
For example, if s=“bab” the process is: “b” → “baa” → “baabbb”. So the encrypted s=“bab” is “baabbb”.

Given string t — the result of encryption of some string s. Your task is to decrypt it, i. e. find the string s.

Input
The first line contains integer n (1≤n≤55) — the length of the encrypted string. The second line of the input contains t — the result of encryption of some string s. It contains only lowercase Latin letters. The length of t is exactly n.

It is guaranteed that the answer to the test exists.

Output
Print such string s that after encryption it equals t.

Examples
inputCopy
6
baabbb
outputCopy
bab
inputCopy
10
ooopppssss
outputCopy
oops
inputCopy
1
z
outputCopy
z
思路:直接输入字符串,输出第1,2,4……位置的字符

#include<iostream>
#include<cstring>
using namespace std;
int main()
{
	int n;
	while(cin >> n)
	{
		string s;
		cin >> s;
		int k = 0;
		for(int i = 0;i<n;i+=++k)cout<<s[i];
		cout<<endl;
	}
	return 0;
 } 
发布了143 篇原创文章 · 获赞 35 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/u011151784/article/details/86062106
今日推荐