CHATCHIT - Chat chit

Giới hạn
  • Thời gian: 0.204s
  • Bộ nhớ: 1536MB
  • Mã nguồn: 50000 bytes

Ghi chú: Các bài VNOI đã được chuyển qua VNOJ (Thông báo). Đề bài trên VNOI và vn.spoj.com sẽ không được cập nhật nữa. Một số đề bài không chính xác sẽ chỉ được cập nhật trên VNOJ. Bạn vẫn có thể tìm kiếm đề bài trên VNOI.

Link đọc đề trên VNOJ

Bh MìN đà BíT cHáT ChÍt NhƯ 1 Ng Vịt cHíNh GúC rÙi!
(Joe's blog)

Sau khi trải qua kỳ thi chọn đội tuyển Quốc tế đầy căng thẳng, các vCoders quyết định tạm gác niềm đam mê tin học của mình một thời gian để đi tìm những niềm vui mới. Một số quyết định đi Hồng Kông nghỉ mát để bù lại những ngày học hành vất vả. Số khác quay lại trường học. Nhưng đặc biệt, có một số vCoders sau những buổi chat đêm đã đi đến quyết định: dùng kiến thức tin học của mình góp phần giữ gìn sự trong sáng của tiếng Việt. Nhóm quyết định lấy tên là vitko (Viet-Coder) để mọi người ý thức được công việc thầm lặng họ đang làm.

Nhận thấy rằng ngôn ngữ chat tiếng Việt bị lạm dụng quá nhiều, các vitkos đã suy nghĩ và tìm một thuật toán để dịch từ ngôn ngữ chat trở lại tiếng Việt. Dữ liệu vào sẽ là một câu chat (gồm các chữ cái latin in thường và không dấu). Thuật toán của các vitkos gồm một số quy tắc được áp dụng theo thứ tự vào câu văn. Các quy tắc này dựa trên hai thao tác cơ bản:

  • R(p)=q: thay tất cả các chuỗi con p bằng chuỗi con q trong câu văn.
  • RW(p)=q: thay tất cả các từ p bằng từ q trong câu văn.

Các quy tắc được áp dụng lần lượt theo thứ tự như sau:

  • RW('k')='khong'
  • RW('ko')='khong'
  • RW('ng')='nguoi'
  • RW('n')='nhieu'
  • RW('dc')='duoc'
  • RW('hok')='khong'
  • RW('ntn')='nhu the nao'
  • RW('kq')='ket qua'
  • R('j')='gi'
  • R('w')='qu'
  • R('f')='ph'
  • R('dz')='d'
  • R('z')='d'

Mặc dù đây là những quy tắc rất đơn giản, tuy nhiên chúng cũng giúp các vitkos đỡ căng mắt khi nhìn vào các đoạn chat! Hãy giúp các vitkos cài đặt thuật toán này. Họ sẽ dùng chương trình của bạn để viết một plugin cho Yahoo Messenger :)

Dữ liệu

Gồm một dòng duy nhất chứa một câu chat vitko vừa nhận được. Câu chat có độ dài không vượt quá 255 ký tự, chỉ gồm các ký tự latin in thường, khoảng trắng và các dấu câu. Các từ được cách nhau đúng một khoảng trắng.

Kết quả

In ra một dòng là câu chat đã được dịch theo thuật toán trên.

Ví dụ

Dữ liệu
chan wa. jo den luc co kq cha mun lam bai j nua :(

Kết quả 
chan qua. gio den luc co ket qua cha mun lam bai gi nua :(

Hiện các vitkos quyết định phát triển hiệu quả hơn thuật toán của mình!


  • Người up: paulmcvn
  • Nguồn bài: © vnoi.info