騰訊2017暑假實習生招聘筆試程式設計題(1)
阿新 • • 發佈:2019-02-08
演算法基礎-字元移位
小Q最近遇到了一個難題:把一個字串的大寫字母放到字串的後面,各個字元的相對位置不變,且不能申請額外的空間。
你能幫幫小Q嗎?
輸入描述:
輸入資料有多組,每組包含一個字串s,且保證:1<=s.length<=1000.
輸出描述:
對於每組資料,輸出移位後的字串。
輸入例子:
AkleBiCeilD
輸出例子:
kleieilABCD
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <vector>
#include <string>
using namespace std;
int main(){
char a[1000];
while(cin>>a){
int len = strlen(a);
int end = len-1;
for(int i = 0 ;i <= end ;){
if(a[i]>='A'&&a[i]<='Z'){
char temp = a[i];
int idx = i;
for (int j = i+1;j<len;j++){
a[idx++] = a[j];
}
a[len-1] = temp;
end--;
}
else i++;
}
cout<<a<<endl;
}
}