问题 J: 奇偶位互换
时间限制: 1 Sec 内存限制: 32 MB
提交: 93 解决: 70
题目描述
给定一个长度为偶数位的0,1字符串,请编程实现串的奇偶位互换。
输入
输入包含多组测试数据。
输入的第一行是一个整数C,表示有C测试数据。
接下来是C组测试数据,每组数据输入均为0,1字符串,保证串长为偶数位(串长<=50)。
输出
请为每组测试数据输出奇偶位互换后的结果,每组输出占一行。
样例输入 Copy
2 0110 1100
样例输出 Copy
1001 1100
代码
#include <iostream>
#include <string>
#include <algorithm>
//理解基本的输入输出,就可以解决这个问题
//因为本身是黑盒测试,所以不需要真的奇偶位互换,只需要先打印偶数位再打印奇数位就可以了
int main(){
int T;
std::cin>>T;
for(int i = 0;i < T;i++){
std::string s;
std::cin>>s;
int size=s.size();
if(size > 50 || size % 2 != 0){
i--;
continue;
}
for(int i=0;i<size/2;i+=1){
printf("%c",s[2*i+1]);
printf("%c",s[2*i]);
}
printf("\n");
}
}