Nội dung bài viết
Đề bài PTIT138C
Ngày nay, việc sử dụng bàn phím điện thoại di động để nhấn các số đã trở thành một việc rất quen thuộc với các bạn sinh viên. Ai cũng biết các phím số trên điện thoại cũng là các phím dùng để nhấn các chữ cái:
2: ABC, 3: DEF, 4: GHI, 5: JKL, 6: MNO, 7: PQRS, 8: TUV, 9: WXYZ
Nam viết ra giấy một dãy ký tự và đố Bình xác định đó là dãy số nào theo cách nhấn số trên điện thoại (chỉ xem xét sự tương ứng giữa số và ký tự chứ không xem xét phải nhấn bao nhiêu lần phím đó, ví dụ cả A, B, C đều là một số 2).
Bình rất nhanh chóng xác định được kết quả, không những thế Bình còn muốn xác định nhanh xem số đó có phải là số dạng thuận nghịch hay không. Một số là thuận nghịch nếu viết theo thứ tự ngược lại cũng là chính nó. Hãy viết chương trình giúp Bình thực hiện công việc trên.
Input
- Dòng đầu tiên chứa số n là số bộ test (không quá 1000).
- Mỗi bộ test viết trên một dòng một dãy ký tự gồm các chữ cái có thể là chữ hoa hoặc chữ thường, dài không quá 20 ký tự, không có khoảng trống.
Output
- Với mỗi bộ test, in ra màn hình, trên một dòng, chữ “YES” nếu đó tương ứng là số thuận nghịch, chữ “NO” nếu ngược lại.
Example
Input:
1 2 3 | 2 ANBOBNA iAmACoolCompany |
Output:
1 2 | YES NO |
Code tham khảo PTIT138C – BÀI C – SỐ THUẬN NGHỊCH:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | const fi=''; type data=longint; var f:text; s:string; i,test,j:data; function tinh(c:char):char; begin c:=upcase(c); case c of 'A'..'C': exit('2'); 'D'..'F': exit('3'); 'G'..'I': exit('4'); 'J'..'L': exit('5'); 'M'..'O': exit('6'); 'P'..'S': exit('7'); 'T'..'V': exit('8'); 'W'..'Z': exit('9'); end; end; function check:boolean; var i:data; st,sk:string; begin st:=''; sk:=''; for i:=1 to length(s) do begin st:=tinh(s[i])+st; sk:=sk+tinh(s[i]); end; if st=sk then writeln('YES') else writeln('NO'); end; begin assign(f,fi); reset(f); readln(f,test); for i:=1 to test do begin readln(f,s); check; end; end. |
Bài viết liên quan
- [Upcoder] HAPPYNEWYEAR – Happy new year 2017
- [UpCoder] LOGIN_UP2 – Xác nhận Upcoder 2
- [C++] Đọc số thành chữ – hàng triệu
- Spoj PTIT PTIT016C – ACM PTIT 2016 C – Chẵn lẻ
- Complete The Word – Codeforces 716B (Div. 2)
- P167PROD spoj PTIT – ROUND 7D – ABC
- NKH spoj – Tách Từ
- P156SUME spoj PTIT – ROUND 6E – Ước chung của chuỗi
- P156PROE spoj PTIT – ROUND 6E – Phép dịch
- P156SUMH spoj PTIT – ROUND 6H – Kim cương
Bạn có check code không bạn ơi, mình hỏi với
Bạn có check code không bạn ơi, xem hộ mình sai ở đâu với, cũng bài này nè
mình vừa submit lại code mình đăng, vẫn accept mà bạn 😀 bạn kiểm tra lại giúp mình nha