Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift
Cho xâu ký tự ~s~ chỉ gồm các ký tự chữ cái latinh và dấu cách, hãy chuẩn hóa xâu ~s~ (tức là xóa hết các dấu cách thừa trong xâu: các dấu cách ở hai đầu, hai từ liên tiếp trong xâu chỉ cách nhau duy nhất một dấu cách).
Input
- Dòng đầu chứa số nguyên dương ~T~ là số chuỗi;
- ~T~ dòng tiếp theo, mỗi dòng chứa một chuỗi có độ dài không quá ~1000~ ký tự.
Giới hạn:
- ~1 ≤ T ≤ 100~.
Output
- Gồm ~T~ dòng, mỗi dòng là một xâu đã chuẩn hóa.
Sample
Input #1
2
abc xyz ab
abc def ghi
Output #1
abc xyz ab
abc def ghi
Problem source: Chuyên Sơn La Online Judge
Bình luận
c++
include <bits/stdc++.h>
Full AC
test 2 là j v ạ
AC
test 3 là gì vậy ạ em nộp mãi ko đc
include <stdio.h>
include <math.h>
include <string.h>
include <stdlib.h>
include <ctype.h>
int main(){ int t; scanf("%d",&t); getchar(); while(t--){ char c[1001]; fgets(c,1001,stdin); char a[100][10]; int n=0; char *token=strtok(c," "); while(token!=NULL){ strcpy(a[n],token); int len=strlen(a[n]); if (len > 0 && a[n][len - 1] == '\n') { a[n][len - 1] = '\0'; len--; } n++; token=strtok(NULL," "); } for (int i=0;i<n;i++){ printf("%s",a[i]); if (i!=n-1) printf(" "); } printf("\n");
}
include <iostream>
include <string>
include <sstream>
using namespace std; string chuanHoaXau(string s) { while (!s.empty() && s.front() == ' ') { s.erase(s.begin()); } while (!s.empty() && s.back() == ' ') { s.pop_back(); } stringstream ss(s); string result, word; while (ss >> word) { result += (result.empty() ? "" : " ") + word; } return result; } int main() { int T; cin >> T; cin.ignore(); for (int i = 0; i < T; ++i) { string s; getline(cin, s); string result = chuanHoaXau(s); cout << result << endl; } return 0; }