Codeforces Round #528 (Div. 2, based on Technocup 2019 Elimination Round 4) A Right-Left Cipher

版权声明:欢迎转载欢迎评论! https://blog.csdn.net/rabbit_ZAR/article/details/85231859

题目:Right-Left Cipher

思路:直接模拟就可以了。相当于先输出中间的字符,然后往右一个,再往左两个,再往右三个这样子跳着输出。

代码:

#include<bits/stdc++.h>
using namespace std;

#define read(x) scanf("%d",&x)
#define maxn 100

char a[maxn+5];

int main() {
	scanf("%s",a+1);
	int n=strlen(a+1);
	
	int p=n/2+(n%2),q=1;
	for(int i=1;i<=n;i++) {
		printf("%c",a[p]);
		p=p+q*i,q=-q;
	}
	
	return 0;
}

猜你喜欢

转载自blog.csdn.net/rabbit_ZAR/article/details/85231859