Được tổng hợp, trích lọc dữ liệu từ trang vn.spoj.comvn.spoj.com là trang giải bài tập trực tuyến dành cho các bạn có niềm đam mê toán tin, đặc biệt là những bạn có mong muốn tham gia các cuộc thi như olympic tin học THPT, tin học trẻ, HSG QG tin học,olympic tin học sinh viên hoặc ACMLập trình viên quốc tế...
Trang 1Tổng hợp 600 bài tập trên VN.SPOJ.COM
[Type the document subtitle]
Tài liệu bao gồm tất cả các bài tập trên trang SPOJ hiện có cho tới ngày 11/06/2014
Phạm Quốc Du Thiên
11/06/2014
Trang 37846 Tổng chữ số
Mã bài: A2DIGIT
Xét số nguyên dương x Gọi S(x) là hàm tính tổng các chữ số của x (trong dạng biểu diễn cơ số 10) Ví dụ, S(21) = 2+1 = 3
Cho số nguyên dương n Ta có thể biểu diễn n dưới dạng tổng của k số nguyên a1, a2, , ak
Yêu cầu: Cho hai số nguyên dương n và m (n, m ≤ 1012) Hãy xác định k nhỏ nhất, sao cho với
nó tồn tại các số a1, a2, , a k thỏa mãn:
a1+a2+ +ak= N
S(a1)+ S(a2)+ +S(ak)= M
Dữ liệu: 2 dòng chứa hai số nguyên n và m
Kết quả: kết quả đưa ra trên một dòng dưới dạng số nguyên Nếu không tồn tại cách phân tích thì
Trang 43810 Kiểm soát không lưu
Mã bài: AIRCTRL
Với sự phát triển ngày càng nhanh của hàng không Việt Nam, sân bay Nội Bài đã trở nên quá nhỏ bé Sân bay chỉ có một đường bãng và các máy bay khi bay tới Hà Nội sẽ phải bay lòng vòng phía trên để chờ được hạ cánh
Để đơn giản, ta hãy mô tả sân bay trên mặt phẳng tọa độ Đề Các, mỗi đơn vị độ dài sẽ tương đương 1 Km Đường bãng của sân bay là một đoạn thẳng từ (0, 0) đến (-7, 0) Các máy bay khi đến Hà Nội sẽ phải bay ở khu vực chờ, đó là một hình có dạng hình chữ nhật với bốn góc là các đoạn ¼ đường tròn Góc trái dưới của hình chữ nhật có tọa độ (X1, 0), góc phải trên là (X2, Y2) Các góc phần tư hình tròn có bán kính là R Dưới đây là ví dụ với X1 = 2, X2 = 11, Y2 = 7, R = 1
Các máy bay sẽ bay với cùng vận tốc 10 Km/phút và theo hướng cùng chiều kim đồng hồ Khi được phép hạ cánh, máy bay phải bay tới vị trí (X1 + R, 0) (vị trí được đánh dấu hình tròn màu
đỏ trên hình vẽ) rồi từ đó bay thẳng vào đường bãng Tại thời điểm ban đầu, có N máy bay, tại các tọa độ (XU, YU) Với mỗi máy bay, ta được biết lượng nhiên liệu còn lại đủ để đi quãng
Trang 5đường là PU (Km) Máy bay được coi là hạ cánh an toàn nếu nó đủ nhiêu liệu để bay đến điểm có tọa độ (0, 0) (đầu đường bãng)
Bạn hãy sắp xếp thứ tự được hạ cánh của các máy bay sao cho thời gian hạ cánh gần nhất giữa 2 máy bay liên tiếp là lớn nhất có thể được, điều này sẽ tãng độ an toàn của các lần hạ cánh
Dữ liệu
Dòng thứ nhất ghi 4 số nguyên X1, X2, Y2, R
Dòng thứ hai ghi số N
Tiếp theo là N dòng, mỗi dòng ghi 3 số thực XU, YU, PU
Dữ liệu đảm bảo máy bay đang bay trên các cạnh thẳng của khu vực chờ Lưu ý rằng
các máy bay có thể ở cùng vị trí vì khi độ cao chênh lệch khác nhau thì vẫn đảm bảo độ
Luôn có một cách sắp xếp các máy bay hạ cánh
Được gửi lên bởi: Duc
Ngày: 2009-02-04
Thời gian chạy: 1s
Giới hạn mã nguồn: 50000B
Trang 65165 Allowance
Mã bài: ALLOW
Như một phần thưởng cho sản xuất sữa kỷ lục, nông dân John đã quyết định bắt đầu trả
tiền trợ cấp nhỏ cho Bessie hàng tuần
FJ có một bộ tiền xu tại N (1 ≤ N ≤ 20) mệnh giá khác nhau, trong đó mỗi mệnh giá đồng
xu đều được chia hết bởi mệnh giá lớn tiếp theo
Sử dụng bộ tiền xu đã cho, FJ muốn trả Bessie một số lượng tiền trợ cấp ít nhất C xu
(1 ≤ C ≤ 100000000) mỗi tuần Hãy giúp ông ta tính số lượng tuần tối đa mà ông có thể
trả tiền trợ cấp cho Bessie
Input
- Dòng 1: Hai số nguyên: N và C
- Các dòng 2 N+1: Mỗi dòng tương ứng với một loại đồng xu và chứa hai số nguyên:
giá trị V (1 ≤ V ≤ 100000000) của các mệnh giá, và số tiền xu B (1 ≤ B ≤ 1000000) của
mệnh giá này mà Farmer John sở hữu
Output
- Một số nguyên là số tuần mà FJ cần trả cho Bessie ít nhất C xu tiền trợ cấp
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: VNOI Online Informatics Olympiad '09
Day 1
Trang 7FJ có thể trả Bessie với một đồng 10-xu cho 1 tuần
Sau đó trả tiếp 2 đồng 5 xu cho 10 tuần
Sau đó trả Bessie 1 đồng 1 xu và 1 đồng 5 xu cho 100 tuần
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: NODEJS PERL 6
Nguồn bài: USACO OCT09
Trang 8Cho 1 dãy số gồm N phần tử (N ≤ 10000), mỗi phần tử có 1 giá trị nằm trong khoảng [-1000, 1000] Ban đầu, bạn sẽ ở vị trí ô số 0 với tổng điểm là 0 Mỗi nước đi, người chơi có thể di chuyển sang phải tối thiểu là 1 bước và tối đa là K bước (K ≤ 10) Khi dừng lại ở 1 ô nào đó thì giá trị của ô đó sẽ được cộng vào tổng điểm Bạn có thể dừng cuộc chơi bất cứ lúc nào Hãy tìm cách chơi sao cho tổng điểm nhận được là nhiều nhất
Dữ liệu vào
Dòng đầu tiên chứa 2 số N, K
Dòng thứ 2 chứa N số của dãy, mỗi số cách nhau 1 dấu cách Mỗi số nằm trong khoảng
Trang 9Trò chơi kết thúc, khi chỉ còn lại một chú kiến Chú kiến đó sẽ nhận được món qùa đầu nãm của
Dòng 1: chứa số nguyên dương N, là số chú kiến trên vòng tròn
Dòng 2: chứa số nguyên dương M
Dữ liệu7 3Kết quả4Giải thíchThứ tự những chú kiến phải ra khỏi vòng tròn lần
lượt là: 3 6 2 7 5 1.Chú kiến 4 là chú kiến may mắn!
Trang 104654 Tam giác
Mã bài: AREATRI
Cho n điểm đôi một phân biệt trên mặt phẳng (n ≥ 3) Có n(n-1)(n-2)/6 tam giác có các đỉnh là 3 đỉnh phân biệt trong số n điểm này (bao gồm cả những tam giác bị suy biến, nghĩa là khi cả 3 đỉnh thẳng hàng)
Ta cần tính tổng diện tích của các tam giác này Phần mặt phẳng thuộc về nhiều tam giác sẽ được tính nhiều lần Quy ước diện tích của các tam giác suy biến là 0
Dữ liệu
Dòng đầu tiên chứa một số nguyên n (3 ≤ n ≤ 1000) cho biết số lượng điểm Mỗi dòng trong số n dòng sau chứa 2 số nguyên xi và yi (0 ≤ xi, yi ≤ 10000) phân cách bởi một khoảng trắng xác định tọa độ của điểm thứ i (với i=1,2, ,n) Không có cặp (thứ tự) tọa độ nào xuất hiện nhiều hơn một lần
Được gửi lên
bởi: VOJ Team
Nguồn bài: VNOI Marathon '08 - Round 11/DivB
Problem Setter: Ngô Minh Đức
Trang 11Kết quả
In ra một số thực duy nhất bằng tổng diện tích của các tam giác có các đỉnh nằm trong n điểm đã cho Kết quả phải được in ra với đúng một chữ số thập phân và không được chênh lệch với kết quả đúng nhiều hơn 0.1
Ví dụ
Dữ liệu50 01 20 21 01 1Kết quả7.0
12656 Assassin Creed
Mã bài: ASSASSIN
Ezio needs to kill N targets located in N different cities The cities are connected by some one
way roads As time is short, Ezio can send a massage along with the map to the assassin's bureau
to send some assassins who will start visiting cities and killing the targets An assassin can start from any city, he may visit any city multiple times even the cities that are already visited by other assassins Now Ezio wants to find the minimum number of assassins needed to kill all the targets
Input
Input starts with an integer T (≤ 70), denoting the number of test cases
Each case starts with a blank line Next line contains two integers N (1 ≤ N ≤ 1000) and M (0 ≤
M ≤ 10000), where N denotes the number of cities and M denotes the number of one way roads
Được gửi lên bởi: Duc
Ngày: 2009-07-27
Thời gian chạy: 3s
Giới hạn mã nguồn: 50000B
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS PERL 6
Nguồn bài: XV Polish Olympiad in Informatics
Trang 12Each of the next M lines contains two integers u v (1 ≤ u, v ≤ N, u ≠ v) meaning that there is a road from u to v Assume that there can be at most one road from a city u to v
Trang 136 7
7 8
8 6
Note
Dataset is huge, use faster I/O methods
3337 Going Once, Going Twice, Gone!
Mã bài: AUCTION
Chế độ ãn kiêng của đàn bò khiến cho nông trang của nông dân John dôi ra 1 số lượng cỏ khô, vì vậy anh ta muốn bán đấu giá số cỏ khô này để trang trải phần nào chi phí chãn nuôi Anh ta có N (1 <= N <= 1,000) bó cỏ khô giống nhau; khách hàng sẽ đấu giá để mua đống cỏ này là M (1 <=
Hãy giúp nông dân John tính xem đặt mức giá nhỏ nhất là bao nhiêu để thu được nhiều tiền nhất
Trang 14Dữ liệu
* Dòng 1: Hai số nguyên cách nhau bởi dấu cách: N và M
* Dòng 2 M+1: Dòng i+1 chứa 1 số nguyên duy nhất: P_i
Trang 15Một dãy cấp số cộng là một dãy số mà 2 cặp phần tử liên tiếp bất kỳ có hiệu bằng nhau và khác 0 Trường hợp dãy số chỉ gồm 2 số khác nhau vẫn tính là một dãy cấp số cộng
Ví dụ: 2, 5 là dãy cấp số cộng
8, 3 là dãy cấp số cộng
1, 2, 3, 4, 5 là dãy cấp số cộng
11, 8, 5, 2 là dãy cấp số cộng
1, 2, 4, 5, 7 không phải là dãy cấp số cộng
Cho một dãy số A gồm N số nguyên dương Cho Q truy vấn dạng (x, y) Mỗi truy vấn yêu cầu kiểm tra xem đoạn từ x tới y có phải là hoán vị của một dãy cấp số cộng không
Dòng thứ i trong Q dòng sẽ trả lời cho truy vấn thứ i
In ra YES nếu đoạn từ x tới y là hoán vị của một dãy cấp số cộng Ngược lại thì ghi ra NO
Trang 161 đến m, không có hai kênh truyền tin nào kết nối cùng một cặp máy chủ Kênh truyền tin i (thuê của công ty A hoặc B) đảm bảo việc truyền tin hai chiều giữa máy chủ của chi nhánh ui và vi (i =
1, 2, , m) Mạng máy tính có tính chất thông suốt nghĩa là đảm bảo từ máy chủ của một chi nhánh bất kỳ có thể truyền tin đến tất cả các máy chủ của các chi nhánh còn lại theo kênh truyền tin trực tiếp giữa chúng hoặc thông qua đường truyền đi qua một số máy chủ của các chi nhánh nào đó Trong thời gian tới do tình hình tài chính gặp khó khãn, ngân hàng muốn cắt giảm tối đa
Được gửi lên bởi: CoderPTNK1114
Trang 17việc thuê các kênh truyền tin nhưng vẫn đảm bảo mạng thông suốt Do chi phí thuê bao phụ thuộc vào số lượng kênh truyền tin phải thuê, nêu sau khi hỏi ý kiến các chuyên gia, ngân hàng được biết là để đảm bảo tính thông suốt của mạng, tối thiểu phải thuê n - 1 kênh truyền tin Từ bảng đơn giá thuê bao kênh truyền tin với hai công ty ta biết ak và bk tương ứng là giá thuê bao
k kênh truyền tin của công ty A và B (k = 1, 2, , n - 1) Ngân hàng muốn tìm phương án giữ lại đúng n - 1 kênh truyền tin trong số m kênh truyền tin đã thuê của hai công ty sao cho tổng chi phí thuê bao phải trả là nhỏ nhất mà vẫn đảm bảo tính thông suốt của mạng
Yêu cầu
Cho biết danh sách các kênh truyền tin và các chi phí ak, bk (k = 1, 2, , n - 1) Hãy tìm phương
án giữ lại đúng n - 1 kênh truyền tin trong số m kênh truyền tin đã thuê của hai công ty sao cho tổng chi phí thuê bao phải trả là nhỏ nhất mà vẫn đảm bảo tính thông suốt của mạng
Input
Dòng đầu tiên chứa T là số lượng bộ dữ liệu Tiếp đến là T nhóm dòng, mỗi nhóm dòng cho biết thông tin về một bộ dữ liệu theo khuôn dạng sau:
Dòng thứ nhất chứa hai số nguyên dương n, m;
Dòng thứ hai chứa n - 1 số nguyên dương a1, a2, , a(n - 1) mỗi số nhỏ hơn 10^9
Dòng thứ bai chứa n - 1 sô nguyên dương b1, b2, , b(n - 1) mỗi số nhỏ hơn 10^9
Dòng thứ i trong số m dòng tiếp theo chứa ba số nguyên dương ui, vi, ci cho biết thông tin về kênh truyền tin thứ i (i = 1, 2, , m) Giả thiết ui khác vi, ci = 1 nếu kênh truyền tin thuê của công ty A, ci = 2 nếu kênh truyền tin thuê của công ty B
Trang 1817870 VOI 2014 - Trò Chơi Với Những Viên
Bi
Mã bài: BALLGMVN
Trong một hội thi Ballgame, ban tổ chức chuẩn bị một bàn lớn Trên mặt bàn có n bi xanh đánh
số từ 1 đến n và n bi đỏ đánh số từ n + 1 đến 2n Mỗi trận đấu, các vận động viên sẽ chơi luân phiên nhau Đến lượt chơi của mình, Hùng cần tìm 3 bi mà vị trí của chúng là thằng hàng hanu
và sao cho trong số đó có hai bi đỏ và 1 bi xanh (khi đó ãn được một bi đỏ), hoặc là có hai bi xanh và 1 bi đỏ (khi đó được ãn 1 bi xanh)
Yêu cầu
Cho biết tọa độ trên mặt phẳng tọa độ Đề-các của vị trí và màu của các bi hiện tại trên bàn, bạn hãy giúp Hùng chọn 3 bi để chơi
Input
Dòng đầu ghi số nguên dương n
Dòng thứ i trong số n dòng tiếp theo ghi hai số nguyên là hoành độ và tung độ trên mặt phẳng tọa độ Đề-các của vị trí đặt bi xanh với chỉ sô i
Dòng thứ i trong số n dòng cuối cùng ghi hai số nguyên là hoàng độ và tung độ trên mặt phẳng tọa độ Đề-các của vị trí đặt bi đỏ với chỉ số n + i
Hoàng độ và tung độ không vượt quá 10^6, vị trí các bi là đôi một phân biệt
Trang 19Để thể hiện được những phân tích về áp suất khí quyển trong ngày, Bessie đang để tâm đến việc tìm một tập hợp con của các phép đo, biểu thị bởi K (1 <= K <= N) chỉ số s_j (trong đó 1 <= s_1
<= s_2 <= <= s_K <= N), thể hiện chính xác được toàn bộ các phép đo, tức là, giới hạn sai số trong khoảng cho phép
Trong bất kì tập hợp các phép đo nào, một lỗi xuất hiện ở mỗi phép đo có vị trí:
1 trước phép đo đầu tiên trong tập hợp;
2 giữa hai phép đo liên tiếp trong tập hợp;
3 sau phép đo cuối cùng trong tập hợp
Được gửi lên bởi: VOJ Team
Trang 20Tổng sai số của tập hợp đó được tính bằng tổng các lỗi trong các phép đo
Cụ thể, với mỗi phép đó có chỉ số i mà không nằm trong tập hợp các phép đo đang xét:
Nếu i < s_1 , sai số được tính như sau:2 * | M_i - M_(s_1) |
Nếu s_j < i < s_(j+1), sai số được tính như sau:| 2 * M_i - Sum(s_j, s_(j+1)) |
trong đó Sum(x,y) = M_x + M_y
Nếu s_K > i, sai số được tính như sau:2 * | M_i - M_(s_K) |
Cho biết sai số tối đa là E (E <= 1 000 000), xác định số phần tử của tập hợp nhỏ nhất tạo ra sai
số không vượt quá E
Dữ liệu
Dòng 1: Chứa hai số nguyên cách nhau bởi khoảng trắng: N và E
Dòng 2 N+1: Dòng i+1 chứa số nguyên M_i
Dữ liệu mẫu4 201032040Giải thích
Bessie tiến hành 4 phép đo; sai số tối đa cho phép là 20 Giá trị các phép đo lần lượt là: 10,3,20,40
Kết quả
Dòng 1: Hai số nguyên cách nhau bởi khoảng trắng: số phần tử của tập hợp các phép đo nhỏ nhất tạo ra sai số không vượt quá E và sai số tập hợp đó tạo ra
Kết quả mẫu2 17Giải thíchChọn phép đo thứ hai và thứ tự là giải pháp tốt
nhất, cho sai số là 17 Sai số trong phép đo thứ nhất là 2*|10-3|=14; sai số trong phép đo thứ hai là |2*20-(3+40)|=3
Được gửi lên bởi: Duc
Ngày: 2009-01-16
Thời gian chạy: 1s
Giới hạn mã nguồn: 50000B
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: Usaco January 2009 - Gold Division
Translated by khanhptnk
Trang 214255 BARICA
Mã bài: BARICAVN
Barica là một con cóc không bình thường Barica sống trong một cái ao, nơi có N lá sen bềnh bồng trên mặt nước Những lá sen được đánh số từ 1 đến N Nhìn từ trên xuống, mỗi lá sen đc xem như một điểm trên hệ trục tọa độ Oxy Barica có thể nhảy từ lá sen có tọa độ (x1;y1) đến tọa
Barica muốn đi từ lá sen 1 đến lá sen N và tích trữ được nhiều nãng lượng nhất có thể khi đang ở
lá sen N Nãng lượng của Barica ban đầu bằng 0 và dĩ nhiên nó phải lấy nãng lượng từ lá sen 1
để thực hiện cú nhảy
Hãy tìm nãng lượng lớn nhất mà Barica có thể có được tại lá sen N
Input
_ Dòng đầu là số N và K (N<=300 000; K<=1000) cách nhau bởi khoảng trắng
_ N dòng sau mỗi dòng chứa 3 số x_i, y_i, F_i với x_i và y_i là tọa độ lá sen thứ i và F_i là số ruồi ở lá sen i (0 <= x_i, y_i <= 100 000; 0 <= F_i <=1000)
Lưu ý: không có hai lá sen nào trùng tọa độ và luôn tồn tại ít nhất một đường đi từ 1 tới N
Trang 224255 BARICA
Mã bài: BARICAVN
Barica là một con cóc không bình thường Barica sống trong một cái ao, nơi có N lá sen bềnh bồng trên mặt nước Những lá sen được đánh số từ 1 đến N Nhìn từ trên xuống, mỗi lá sen đc xem như một điểm trên hệ trục tọa độ Oxy Barica có thể nhảy từ lá sen có tọa độ (x1;y1) đến tọa
Barica muốn đi từ lá sen 1 đến lá sen N và tích trữ được nhiều nãng lượng nhất có thể khi đang ở
lá sen N Nãng lượng của Barica ban đầu bằng 0 và dĩ nhiên nó phải lấy nãng lượng từ lá sen 1
để thực hiện cú nhảy
Hãy tìm nãng lượng lớn nhất mà Barica có thể có được tại lá sen N
Input
_ Dòng đầu là số N và K (N<=300 000; K<=1000) cách nhau bởi khoảng trắng
_ N dòng sau mỗi dòng chứa 3 số x_i, y_i, F_i với x_i và y_i là tọa độ lá sen thứ i và F_i là số ruồi ở lá sen i (0 <= x_i, y_i <= 100 000; 0 <= F_i <=1000)
Lưu ý: không có hai lá sen nào trùng tọa độ và luôn tồn tại ít nhất một đường đi từ 1 tới N
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: COCI 2007-2008
Trang 23Để thể hiện được những phân tích về áp suất khí quyển trong ngày, Bessie đang để tâm đến việc tìm một tập hợp con của các phép đo, biểu thị bởi K (1 <= K <= N) chỉ số s_j (trong đó 1 <= s_1
<= s_2 <= <= s_K <= N), thể hiện chính xác được toàn bộ các phép đo, tức là, giới hạn sai số trong khoảng cho phép
Trong bất kì tập hợp các phép đo nào, một lỗi xuất hiện ở mỗi phép đo có vị trí:
1 trước phép đo đầu tiên trong tập hợp;
2 giữa hai phép đo liên tiếp trong tập hợp;
3 sau phép đo cuối cùng trong tập hợp
Được gửi lên bởi: PNL
Ngày: 2009-04-24
Thời gian chạy: 1s
Giới hạn mã nguồn: 50000B
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: COCI 2007-2008
Trang 24Tổng sai số của tập hợp đó được tính bằng tổng các lỗi trong các phép đo
Cụ thể, với mỗi phép đó có chỉ số i mà không nằm trong tập hợp các phép đo đang xét:
Nếu i < s_1 , sai số được tính như sau:2 * | M_i - M_(s_1) |
Nếu s_j < i < s_(j+1), sai số được tính như sau:| 2 * M_i - Sum(s_j, s_(j+1)) |
trong đó Sum(x,y) = M_x + M_y
Nếu s_K > i, sai số được tính như sau:2 * | M_i - M_(s_K) |
Cho biết sai số tối đa là E (E <= 1 000 000), xác định số phần tử của tập hợp nhỏ nhất tạo ra sai
số không vượt quá E
Dữ liệu
Dòng 1: Chứa hai số nguyên cách nhau bởi khoảng trắng: N và E
Dòng 2 N+1: Dòng i+1 chứa số nguyên M_i
Dữ liệu mẫu4 201032040Giải thích
Bessie tiến hành 4 phép đo; sai số tối đa cho phép là 20 Giá trị các phép đo lần lượt là: 10,3,20,40
Kết quả
Dòng 1: Hai số nguyên cách nhau bởi khoảng trắng: số phần tử của tập hợp các phép đo nhỏ nhất tạo ra sai số không vượt quá E và sai số tập hợp đó tạo ra
Kết quả mẫu2 17Giải thíchChọn phép đo thứ hai và thứ tự là giải pháp tốt
nhất, cho sai số là 17 Sai số trong phép đo thứ nhất là 2*|10-3|=14; sai số trong phép đo thứ hai là |2*20-(3+40)|=3
Được gửi lên bởi: Duc
Ngày: 2009-01-16
Thời gian chạy: 1s
Giới hạn mã nguồn: 50000B
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: Usaco January 2009 - Gold Division
Translated by khanhptnk
Trang 25Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Trang 26Mã bài: BCDIV
Một hôm trời nắng nóng bức, Chí Phèo nhà ta lại đến nhà Bá kiến đòi tiền mua rượu Oái oãm thay, tên Bá Kiến keo kiệt hôm nay lại dở chứng bắt Chí phải thực hiện yêu cầu của mình rồi mới cho tiền Chí tức tối lắm nhưng vì quá ghiền rượu nên hắn đành phải chấp nhận điều kiện mà
cụ thể là giải 1 bài toán
Bài toán có nội dung như sau :Cho n phần tử khác nhau, hỏi có bao nhiêu cách chia n phần tử đó thành k nhóm mà mỗi nhóm có ít nhất 1 phần tử (các hoán vị của các nhóm được xem là 1 cách)
Vì thất học nên Chí nghĩ mãi không ra, các bạn giúp Chí 1 tay nhé, không thì hắn ta chết vì thèm rượu mất ^^
Dữ liệu vào :Dòng đầu tiên chứa số T là số test.T dòng tiếp theo mỗi dòng chứa 2 số N và K, với
1<=K<=N<=25Dữ liệu ra :T dòng, mỗi dòng là số cách với test tương ứng
Được gửi lên bởi: Ngô Phan Gia Bảo Chí - COMING BACK
Ngày: 2008-07-16
Thời gian chạy: 0.5s
Giới hạn mã nguồn: 50000B
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: Trên trời rớt xuống :))
Trang 27Một bàn cờ vua là một bảng ô vuông mà trên mỗi hàng, mỗi cột các ô màu đen và trắng nằm xen
kẽ nhau.Trên thị trường, ngoài bàn cờ vua truyền thống loại 1(kích thước 8x8, 2 ô ở 2 góc đối diện có màu giống nhau) còn có bán 2 loại bàn cờ vua mới : loại 2 (kích thước 9x9, 4 ô ở 4 góc màu đen) và loại 3 (kích thước 9x9, 4 ô ở 4 góc màu trắng)
Trong một lần làm bài tập tin học, Đãng bắt gặp một bảng kích thước NxN chỉ gồm các ô có giá trị 0 và 1 Xem như các ô 0 có màu trắng và các ô 1 có màu đen Ta định nghĩa một hình vuông loại A là hình vuông có tính chất giống bàn cờ loại A (ở đây chỉ quan tâm đến tính xen kẽ màu của các ô liên tiếp và màu của 4 ô ở 4 góc chứ không tính đến kích thước) Một ô „1‟ được xem như một hình vuông loại 2 và một ô „0‟ được xem như một hình vuông loại 3
Gọi SA là độ dài cạnh của hình vuông loại A lớn nhất và TA là số lượng hình vuông loại A có độ dài cạnh bằng SA.Đãng muốn biết giá trị của các Si và Ti
Input
Dòng đầu là số nguyên dương N (N <= 2000)
N dòng tiếp theo, mỗi dòng gồm N kí tự là ‘0’hoặc ‘1’
Output
Gồm 3 dòng, trên dòng thứ i ghi 2 số nguyên Si và Ti
Nếu không tồn tại hình vuông loại A thì xem như SA=TA=0
Trang 283722 Vị trí tốt nhất
Mã bài: BESTSPOT
Bessie, luôn luôn muốn cuộc sống của mình tốt hơn , đã thấy rõ rằng cô ta thật sự rất thích ghé thãm F (1 <= F <= P) cánh đồng yêu thích F_i trong tổng số P (1 <= P <= 500;1 <= F_i <= P) cánh đồng (được đánh số từ 1-> P) thuộc sơ hữu của nông dân John
Bessie biết rằng cô ấy có thể xác định được C (1 <= C <= 8000) con đường hai chiều (được đánh
số 1 C) kết nối tất cả các cánh đồng trong toàn bộ nông trại.Ứng với mỗi con đường P_i là thời gian đi T_i (1 <= T_i <= 892) và nối 2 cánh đồnga_i và b_i (1 <= a_i <= P; 1 <= b_i <= P)
Bessie muốn tìm cánh đồng tốt nhất để ngủ thỏa mãn bình quân thời gian để đi đến Fcánh đồng yêu thích của cô ta là nhỏ nhất
Ví dụ, hãy xem xét một nông trang được trình bày như một bản đồ dưới đây , nơi * 'd là cách đồng được yêu thích.Các số trong ngoặc là thời gian tương ứng để di chuyển giữa 2 cánh đồng
1 * [4] - 2 - [2] - 3| |[3] [4]| |4 - [3] - 5 - [1] - 6 - [6] - 7 - [7] - 8 *| | | |[3] [2] [1] [3]| | | |13 * 9 - [3] - 10 * [1] - 11 * [3]
Trang 29 Dòng 1: 3 số nguyên P,F,C
Dòng 2 F+1: Dòng i+2 chứa 1 số Nguyên F_i
Dòng F+2 C+F+1 : Mỗi dòng chứa 3 số Nguyên a_i, b_i, F_i mô tả 1 con đường 2 chiều
là thời gian di chuyển giữa chúng
Bessie biết rằng cô ấy có thể xác định được C (1 <= C <= 8000) con đường hai chiều (được đánh
số 1 C) kết nối tất cả các cánh đồng trong toàn bộ nông trại.Ứng với mỗi con đường P_i là thời gian đi T_i (1 <= T_i <= 892) và nối 2 cánh đồnga_i và b_i (1 <= a_i <= P; 1 <= b_i <= P)
Bessie muốn tìm cánh đồng tốt nhất để ngủ thỏa mãn bình quân thời gian để đi đến Fcánh đồng yêu thích của cô ta là nhỏ nhất
Được gửi lên bởi: Duc
Ngày: 2009-01-16
Thời gian chạy: 1s
Giới hạn mã nguồn: 50000B
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: USACO January 2008 - Silver Division
Translated by canhteo
Trang 30Ví dụ, hãy xem xét một nông trang được trình bày như một bản đồ dưới đây , nơi * 'd là cách đồng được yêu thích.Các số trong ngoặc là thời gian tương ứng để di chuyển giữa 2 cánh đồng
1 * [4] - 2 - [2] - 3| |[3] [4]| |4 - [3] - 5 - [1] - 6 - [6] - 7 - [7] - 8 *| | | |[3] [2] [1] [3]| | | |13 * 9 - [3] - 10 * [1] - 11 * [3]
Dòng 2 F+1: Dòng i+2 chứa 1 số Nguyên F_i
Dòng F+2 C+F+1 : Mỗi dòng chứa 3 số Nguyên a_i, b_i, F_i mô tả 1 con đường 2 chiều
là thời gian di chuyển giữa chúng
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: USACO January 2008 - Silver Division
Translated by canhteo
Trang 31Mã bài: BFCHAL
Đây là bài tập Brainfuck được thêm vào phỏng theo mong muốn của nhiều bạn, mình add vào để mọi người thỏa sức tìm hiểu ngôn ngữ thú vị này Vì những dạng bài tập nhập xuất kiểu này tương đối dễ Nên đề bài tương đối gọn đúng với cái tên thách đố :P
13099 Hóa đơn tiền điện
Được gửi lên
bởi: Ngô Phan Gia Bảo Chí - COMING BACK
AWK BF C++ 4.3.2 CLOJ F# GO NODEJS PERL 6 PYTH 3.2.3 PYTH 3.2.3
n SCALA SED TCL TEXT
Trang 32Mã bài: BILL
Nãm 2112, nước ta đã trở thành một cường quốc kinh tế Giá trị đồng tiền tãng lên 100 lần (200VNĐ tương ứng vói 20.000VNĐ vào nãm 2012) Tuy mạnh về kinh tế nhưng giá điện lại vô cùng đắt đỏ Công NVE là nhà cung cấp điện duy nhất trong thành phố Nam ở NVE vừa tãng giá điện, bảng giá như sau :
Dung lượng (kWh) Đơn giá (VNĐ)
Lợi dụng độc quyền cung cấp điện, NVE thường xuyên tìm cách lừa khách hàng (báo sai hóa đơn chả hạn) để moi thêm tiền Tuy nhiên do Nam rất giỏi tính toán nên chưa bị lừa lần nào Điều này làm NVE rất tức và quyết định bắt bí bằng được Thay vì gửi hóa đơn báo lượng điện tiêu thụ và chi phí của Nam, NVE gửi hóa đơn cho Nam và hàng xóm là Việt báo 2 con số :
X : tổng số tiền phải trả nếu cộng lượng điện tiêu thụ của Nam và Việt lại
Y : độ chênh giữa số tiền Nam phải trả và Việt phải trả
Nếu không tính được hóa đơn của mình, Nam phải trả thêm 200.000 VNĐ “phí tính toán” Không chịu đầu hàng, Nam quyết tâm tính ra hóa đơn của mình Nam biết được một chi tiết quan trọng là mình không thể tiêu thụ điện nhiều hơn Việt (do Việt bật máy lạnh suốt ngày) Biết NVE sẽ còn làm khó mình dài dài, Nam viết hẳn một chương trình để tính
Trang 33Trùm khủng bố Bin Laden trốn trong 1 cãn hầm được đào sâu xuống mặt đất M tầng, mỗi tầng
có N phòng Các phòng được ngãn cách bằng các cửa rất khó phá Các phòng có cửa xuống phòng ngay phía dưới và 2 phòng ở 2 bên.Từ trên mặt đất có N cửa xuống N phòng tầng -1 Bin Laden ở tầng dưới cùng (tầng -M) phòng thứ N (phòng ở bên phải nhất).Mỗi cửa được làm bằng một kim loại khác nhau với độ dày khác nhau nên việc phá cửa cần thời gian khác nhau
Bạn hãy tìm cách đi từ mặt đất xuống phòng của Bin Laden nhanh nhất không hắn thoát mất
Trang 34Ghi ra 1 số là thời gian nhỏ nhất để đến được phòng của Bin Laden
1 Đưa một sản phẩm hiện tại trên dãy bãng vào thùng 1
2 Đưa một sản phẩm hiện tại trên dãy bãng vào thùng 2
3 Đóng thùng 1 và mở một thùng mới thay thế cho thùng 1
4 Đóng thùng 2 và mở một thùng mới thay thế cho thùng 2
Được gửi lên bởi: VOJ Team
Ngày: 2008-09-05
Thời gian chạy: 1s
Giới hạn mã nguồn: 50000B
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài: VNOI Marathon '08 - Round 12/DivB
Problem Setter: Lê Đôn Khuê
Trang 35Các thao tác 1, 2 chỉ có thể thực hiện nếu tổng dung tích của sản phẩm cho vào và các sản phẩm
đã có trong thùng không vượt quá dung tích của thùng
Yêu cầu: Cho biết dung tích mỗi thùng là L, dung tích của N sản phẩm trên dãy bãng theo thứ tự
xuất hiện là a1, a2, , aN , hãy tìm số thùng ít nhất để có thể cho N sản phẩm vào thùng
Input
Dòng thứ nhất là hai số nguyên dương L và N
Dòng tiếp theo chứa các số mô tả các số a1, a2, …,aN (1 ≤ ai ≤ L)
Trang 364660 Binary palindrome
Mã bài: BINPAL
Nhà vua của đất nước VNOI rất yêu thích tin học và nghệ thuật Ngài rất quan tâm đến những xâu nhị phân đối xứng Xâu nhị phân đối xứng là xâu chỉ gồm 2 loại ký tự 0, 1 và xâu không thay đổi dù ta đọc theo thứ tự từ trái sang phải hay từ phải sang trái
Trong bữa tiệc sinh nhật lần thứ 101 của nhà vua, ngài đã đưa ra một danh sách gồm K xâu nhị phân cho các vị đại thần Sau đó ngài đặt ra câu hỏi: có bao nhiêu xâu nhị phân thoả mãn đồng thời 2 điều kiện:
Đó là xâu nhị phân đối xứng có đúng N ký tự
Xâu không chứa 2 xâu con không giao nhau nằm trong danh sách K xâu nhị phân kia
Ví dụ, nếu nhà vua đưa ra danh sách gồm 2 xâu nhị phân 101 và 1001 thì một vài xâu nhị phân
không thoả mãn điều kiện thứ 2 là: 1011001 (chứa 2 xâu 101 và 1001), 1010101 (2 xâu con có
thể giống nhau) Những xâu nhị phân thoả mãn điều kiện thứ 2 có thể là: 1001001 (2 xâu 1001 giao nhau), 1010011
Các bạn hãy giúp các vị đại thần trả lời câu hỏi hóc búa của đức vua!
Dữ liệu
Dòng đầu ghi 2 số N, K
K dòng sau, mỗi dòng ghi một xâu nhị phân trong danh sách mà nhà vua đã đưa ra
Được gửi lên bởi: Tô Hữu Quân
Trang 37 Độ dài của mỗi xâu trong input không vượt quá 30
Trong 30% số test, N không vượt quá 30
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài:
VNOI Marathon 2009Round 4
Problem Setter: Khúc Anh Tuấn
Trang 38Cây nhị phân là cây mà mỗi nút có tối đa 2 con, thường được gọi là con trái và con phải 3 phép duyệt cây nhị phân thông thường là tiền thứ tự (preorder), trung thứ tự (inorder) và hậu thứ tự (postorder):
Duyệt tiền thứ tự cây gốc A: thãm gốc A, thãm cây con trái của A, thãm cây con phải của
Dòng đầu ghi số N là số đỉnh (N <= 50 000, 40% số test N <= 1000)
Dòng thứ hai ghi N số là danh sách duyệt preorder
Dòng thứ ba ghi N số là danh sách duyệt inorder
Trang 394605 Exchanging Land for a Fan
Mã bài: BLAND
Giá trị chiếc quạt mo
Phú ông có một mảnh đất hình chữ nhật được chia thành lưới ô vuông gồm M hàng và N cột Các hàng của lưới được đánh số từ trên xuống dưới bắt đầu từ 1, còn các cột – đánh số từ trái
Được gửi lên bởi: Lê Đôn Khuê
Trang 40sang phải, bắt đầu từ 1 Ô nằm giao của hàng i và cột j là ô đất i,j (i=1 M,j=1 N) có độ cao là hij Phú ông đã đưa ra đề nghị đổi chiếc quạt mo lấy đất như sau:
Bờm được quyền chọn 2 mảnh đất con (một mảnh để làm nhà, một mảnh để trồng rau), hai mảnh đều có dạng hình chữ nhật và chứa nguyên các ô
Mỗi mảnh đất có độ chênh lệch không quá K, nghĩa là hiệu độ cao của ô có độ cao nhất với ô có độ cao thấp nhất không vượt quá K
Hai mảnh đất được chọn không không giao nhau nhưng có thể tiếp xúc nhau
Hãy giúp Bờm chọn được hai mảnh đất thỏa mãn điều kiện của phú ông và có tổng diện tích là lớn nhất
Lưu ý: Có 50% số test với m,n≤50
Được gửi lên bởi: Duc
Ngày: 2009-07-21
Thời gian chạy: 1s-5s
Giới hạn mã nguồn: 50000B
Memory limit: 256MB
Cluster: Pyramid (Intel Pentium III 733 MHz)
Ngôn ngữ cho phép: Tất cả ngoại trừ: ERL JS NODEJS PERL 6
Nguồn bài:
VNOI Marathon 2009Round 3
Problem Setter: Đỗ Đức Đông