Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
NKLEXIC - Thứ tự từ điển |
Cho tập gồm N (1 ≤ N ≤ 26) chữ cái đầu tiên trong bảng chữ cái Latin và số nguyên dương M (1 ≤ M ≤ N). Cặp số (N,M) xác định một tập hợp tất cả các từ gồm M chữ cái khác nhau từ N chữ cái đã cho. Các từ trong tập hợp này được sắp xếp thành dãy theo thứ tự từ điển. Khi đó, ta gọi số thứ tự từ điển của một từ là số thứ tự của nó trong dãy từ được sắp xếp.
Ví dụ, cặp (N=3, M=2) xác định tập {ab, ac, ba, bc, ca, cb}. Từ 'bc' tương ứng với 4, từ 'ab' tương ứng với 1, từ 'ca' tương ứng với 5,....
Yêu cầu: Giả sử biết cặp số nguyên (N,M), khi đó cho một từ bạn cần xác định số thứ tự từ điển của nó, ngược lại cho biết số thứ tự từ điển của một từ bạn cần đưa ra từ đó. Trong cả hai tình huống, bạn phải kiểm tra xem dữ liệu có đúng đắn hay không: trong tình huống thứ nhất, dữ liệu là đúng đắn nếu từ đã cho thuộc tập từ được xét, còn trong tình huống thứ hai, dữ liệu là đúng đắn nếu tìm được từ trong tập từ có số thứ tự đã cho.
Dữ liệu
- Dòng đầu tiên là số nguyên K là số bộ dữ liệu.
- Tiếp theo là K nhóm dòng mô tả K bộ dữ liệu, mỗi nhóm gồm hai dòng:
- Dòng đầu tiên chứa hai số N, M.
- Dòng thứ hai bắt đầu bởi chữ 'P' hoặc chữ 'W' tương ứng với việc bạn cần xác định số thứ tự từ điển của từ cho trước hay xác định từ tương ứng với số thứ tự của nó. Sau chữ 'P' hoặc chữ 'W' là một khoảng trống, tiếp đến là từ gồm M chữ cái latinh in thường nếu chữ đầu dòng là 'P' và là số nguyên dương nếu chữ cái đầu dòng là 'W'.
Kết quả
Ghi ra K dòng, mỗi dòng là câu trả lời cho một bộ dữ liệu tương ứng trong file dữ liệu và chứa thông tin sau:
- Nếu bộ dữ liệu đã cho là không đúng đắn cần ghi thông báo 'Incorrect data'.
- Nếu bộ dữ liệu đã cho là đúng đắn bạn cần ghi ra từ hoặc số thứ tự từ điển cần tìm phụ thuộc vào câu hỏi của bộ dữ liệu.
Chú ý
Trong trường hợp dữ liệu là đúng đắn, luôn đảm bảo số thứ tự thuộc phạm vi [1, 2000000000] khi xác định từ có số thứ tự cho trước và thứ tự của từ thuộc phạm vi [1, 2000000000] khi xác định số thứ tự của từ cho trước.
Ví dụ
Dữ liệu: 4 3 2 P bc 4 3 W 6 3 3 P vba 3 3 W 9 Kết qủa 4 adc Incorrect data Incorrect data
Được gửi lên bởi: | Jimmy |
Ngày: | 2008-01-13 |
Thời gian chạy: | 1s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | Tất cả ngoại trừ: ERL GOSU JS-RHINO NODEJS PERL6 PYPY RUST SED VB.NET |
hide comments
|
|||||
2017-10-14 14:27:20
các bạn làm dc 90 d thì chú ý mấy trường hợp này nha: + với truy vấn W ,độ lớn tối đa của chỉnh hợp là 26! , + truy vấn P : nhớ xét trường hợp các chữ trùng nhau và độ dài dãy dữ liệu không bằng k |
|||||
2017-02-06 14:36:11
Lollipop |
|||||
2017-02-06 14:35:42
90 90 90 90 90 90 90 90 90 90 90 ưaaaaaaaaaaa |
|||||
2016-11-14 14:52:41
sao lại 70 nhỉ?? |
|||||
2016-08-27 15:54:46 Sơn Tùng M-TP
90 thử test này nha :)) 1 3 3 P aab Đáp án là Incorrect data nhé! Last edit: 2016-08-27 15:57:06 |
|||||
2015-10-19 16:09:07 Do Hong Huan
90 là bị gì nhỉ ? |
|||||
2015-06-22 12:31:25 Prismatic
vãi @@ mất cả buổi mới từ 90 >> 100 @@ |
|||||
2015-05-09 15:09:12 Stupid Dog
sao mai chi co 90 |
|||||
2014-07-23 19:44:29 Thcs Ðặng Chánh Kỷ
sao 0 mãi thế này, ức chế |
|||||
2014-07-06 10:30:59 Lollipop
90 là bị gì thế @@ |