문제 설명
Description
문자열을, 문자열 접미어, 예를 들면, 그레인 정렬
: 서브 스트링있다
그레인
비가
AIN가
에
N-
각 서브 대해, 즉 다음 전적으로 문자열 정렬을 :
AIN, 곡물, N-에, 빗물
Input
의 입력 세트의 복수 각각의 입력 라인 스트링.
Output
소트 출력, 각 라인 문자열 부분 문자열
Sample Input
그레인
바나나
Sample Output
AIN
그레인
의
N-
비 ANA의 아냐 나 바나나 나 나나
사고 문제
- 각 문자열은 먼저 구축 한 다음 분류
- 참조하지 않도록주의
#include <algorithm>
또는 메모리가 폭발 - 입력 불확실한 세트의 복수의 표기
while(cin >> i)
나 숫자 또는 문자열이 될 수
특정 코드
#include <iostream>
// 不要轻易引用这个内存会爆炸的
// #include <algorithm>
using namespace std;
int main()
{
string i;
int head=0;
while(cin>>i){
string data[1000];
head = 0;
for(int k=0;k<i.length();k++){
data[head++] = i.substr(head,i.length());
}
for(int k=head;k>=0;k--){
for(int k2=head;k2>0;k2--){
if(data[k2]>data[k2-1]){
string temp = data[k2];
data[k2] = data[k2-1];
data[k2-1] = temp;
}
}
}
for(int k=head-1;k>=0;k--){
cout << data[k] << endl;
}
}
return 0;
}