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
Viết chương trình đếm tần suất xuất hiện của tất cả các ký tự (không phân biệt hoa thường) có trong chuỗi ~s~ được nhập từ bàn phím. In ra kết quả theo thứ tự từ điển (Tần suất xuất hiện của các chữ số 0-9, sau đó là a-z).
Lưu ý:
- Chỉ đếm các ký tự thuộc bảng chữ cái tiếng anh (a-z, A-Z) và các chỗ số (0-9)
- Không in các ký tự có tần suất bằng 0.
Input
- Chuỗi ~s~ có độ dài không vượt quá 10000 ký tự
Giới hạn
- Chuỗi ~s~ có thể bao gồm các chữ cái (a-z, A-Z), chữ số (0-9), khoảng trắng và các ký tự đặc biệt
Output
- kết quả theo thứ tự từ điển (Tần suất xuất hiện của các chữ số 0-9, sau đó là a-z).Mỗi dòng gồm 1 ký tự (dạng viết thường) và số lần xuất hiện của ký tự đó trong ~s~, ngăn cách nhau bởi dấu cách
Sample
Input #1
Lap Trinh Khong Kho!
Output #1
a 1
g 1
h 3
i 1
k 2
l 1
n 2
o 2
p 1
r 1
t 1
Bình luận
include <bits/stdc++.h>
using namespace std; string s,res; map<char,int>dem; int main() { getline(cin,s); sort(s.begin(),s.end()); for(auto x : s) { x=tolower(x); if ((x>='0'&&x<='9')||(x>='a'&&x<='z'))
} sai o dau??
dùng isalnum(char c) Trả về 1 nếu kí tự c là chữ số hoặc chữ cái, ngược lại trả về 0
hello ae
dùng multiset xuất
count(x)
đc nhaCó ai sai test 2 như mình k :v
Bài nay bạn có thể dùng map