Giải bài trực tuyến

Problem hidden
This problem was hidden by Editorial Board member probably because it has incorrect language version or invalid test data, or description of the problem is not clear.

Từ tập các bài có trên SPOJ (oi)

6319. Mã số thuế

Mã bài: TAXID

Mã số thuế

Ðể thực hiện luật Thuế thu nhập cá nhân, Tổng cục thuế phải cấp cho mỗi người có thu nhập một mã số thuế sao cho không có hai người nào có mã số thuế trùng nhau. Tổng cục thuế quyết ðịnh chọn mã số thuế từ tập S bao gồm các biểu diễn trong hệ ðếm cơ số 36 của tất cả các số nguyên dương trong phạm vi từ 1 ðến n (36 ≤ n ≤ 1016). Ðể biểu diễn các chữ số trong hệ ðếm cơ số 36, Tổng cục thế sử dụng các kí tự từ 0 ðến 9 và 26 chữ cái latinh từ a ðến z theo quy tắc chỉ ra trong bảng 1. Một số trong hệ ðếm cơ số 36 có thể hiểu là số biểu diễn trong hệ ðếm cơ số q (2 ≤ q ≤ 36) nếu nó chỉ chứa các các chữ số trong q chữ số ðầu tiên trong hệ ðếm cơ số 36.

 

 

Có tất cả m Cục thuế ðược ðánh số từ 1 ðến m làm nhiệm vụ duyệt hồ sơ và cấp mã số thuế (3 ≤ m ≤ 70).

Ðể việc cấp mã số thuế có thể ðược tiến hành song song ở tất cả các Cục thuế, trước hết Tổng cục thuế chọn dãy số nguyên c1, c2, ..., ck thỏa mãn 1 < c1 < c2 < ... < ck < 36, trong ðó k = [(m-1)/2] (kí hiệu [α] là số nguyên lớn nhất bé hơn hoặc bằng α) và sau ðó tiến hành phân phối mã số thuế cho các Cục thuế như sau: ðầu tiên, từ tập S lọc ra tất cả các số có thể hiểu như là số trong hệ ðếm cơ số c1, chuyển cho các Cục thuế thứ nhất và thứ hai sử dụng, sau ðó loại bỏ tất cả các số này khỏi tập S; tiếp ðến, lọc ra tất cả các số còn lại trong S có thể hiểu như số ðếm ở hệ ðếm cơ số c2 chuyển cho các Cục thuế thứ 3 và thứ 4 sử dụng, sau ðó loại bỏ tất cả các số này khỏi tập S; ... Cục thuế cuối cùng (nếu m lẻ) hoặc 2 Cục thuế cuối cùng (nếu m chẵn) ðược sử dụng các mã còn lại trong tập S.

Tại các Cục thuế, mã số thuế ðược cấp theo quy tắc sau: các Cục thuế với số hiệu lẻ cấp mã số thuế theo tứ tự từ nhỏ ðến lớn, còn các Cục thuế với số hiệu chẵn cấp mã số thuế theo thứ tự từ lớn ðến nhỏ trong tập các mã số ðược phân phối.

Ví dụ, với n = 50, m = 3 và c1 = 16. Ta có tập mã số thuế ban ðầu S = {1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1a, 1b, 1c, 1d, 1e}. Khí ðó các Cục thuế 1 và 2 ðược sử dụng các mã trong tập {1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1a, 1b, 1c, 1d, 1e}; Cục thuế 3 ðược sử dụng các mã {g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z}. Người thứ nhất ðến Cục thuế 2 ðược cấp mã số thuế 1e, người thứ hai ðến Cục thuế này ðược cấp mã số thuế 1d, ...

Yêu cầu

Cho ở dạng hệ ðếm cơ số 10 các số nguyên dương n, m, c1, c2, ..., ck, p và q. Hãy xác ðịnh mã số thuế của người thứ q ở Cục thuế p.

Dữ liệu

 

  • Dòng thứ nhất chứa các số nguyên n, m, p, q.
  • Dòng thứ hai chứ k số nguyên c1, c2, ..., ck (k = [(m-1)/2]).

 

Các số trên một dòng ðược ghi cách nhau một dấu cách. Dữ liệu ðảm bảo tồn tại mã số thuế.

Kết quả

Ðưa ra mã số thuế tìm ðược.

Ví dụ

Input:
30 5 2 2
16

Output:
1d

Ràng buộc

60% số tests ứng với 60% số ðiểm của bài có 36 ≤ n ≤ 10000.


Được gửi lên bởi:Lê Ðôn Khuê
Ngày:2010-03-11
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Ngôn ngữ cho phép:Tất cả ngoại trừ: AWK CLOJ ERL F# GO PERL 6 PYTH 3.1.2 SCALA SED TCL
Nguồn bài:VOI 2010

hide comments
2011-01-04 14:35:37 Ngu mà còn tỏ ra nguy hiểm
50 3 2 2 anh ơi!
2010-03-13 09:00:45 Dzung Nguyen
50 3 2 2
1d
ðề qg bài này khó nhất.Ðề khó hiểu.Làm ðc có 2 bài ðầu.Ko kịp b3
2010-03-13 06:54:55 Nguyễn Hoàng Việt Tuấn
test mà cũng sai nữa anh ơi!!!!!!!!!1
2010-03-12 14:47:03 AnhDQ
mình gõ =))
anh Khuê ơi sửa giúp em :">
input: 50 3 2 2
2010-03-12 14:35:11 Nguyễn Duy Long
50 3 2 2
2010-03-12 13:36:56 Lee Zhung Hee
input sai rồi anh Khuê : 50 3 2 2

Last edit: 2010-03-24 09:32:10
SPOJ System © 2012 Sphere Research Labs | Projekty informatyczne i aplikacje na zamówienie. All Rights Reserved.