1. Trang chủ
  2. » Giáo án - Bài giảng

Bai tap nang cao do thi pascal

9 675 4

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 9
Dung lượng 36,92 KB

Nội dung

Viết chương trình, với mỗi K cặp thành phố cho trước, tìm độ dài của con đường ngắn nhất và dài nhất trên đường đi giữa 2 thành phố này.. Mỗi dòng trong số N-1 dòng tiếp theo chứa 3 số n

Trang 1

SPOJ – Lowest Common Ancestor – LCA

SPOJ – Above the Median – KMEDIAN →

SPOJ – LUBENICA – LUBENICA

Posted on 11/01/2015by connhangheovodanh

SPOJ – LUBENICA – LUBENICA

Mạng lưới giao thông ở 1 nước bao gồm N thành phố (đánh số từ 1 đến N) và N-1 đường nối các thành phố với nhau Có một đường đi duy nhất giữa mỗi cặp thành phố Mỗi con đường có một độ dài xác định.

Viết chương trình, với mỗi K cặp thành phố cho trước, tìm độ dài của con đường ngắn nhất và dài nhất trên đường đi giữa 2 thành phố này.

Dữ liệu

Dòng đầu tiên chứa số nguyên N, 2 ≤ N ≤ 100 000.

Mỗi dòng trong số N-1 dòng tiếp theo chứa 3 số nguyên A, B, C cho biết có một con

đường độ dài C giữa thành phố A và thành phố B Độ dài của mỗi con đường là số nguyên dương không vượt quá 1000000.

Dòng tiếp theo chứa số nguyên K, 1 ≤ K ≤ 100 000.

Mỗi dòng trong số K dòng tiếp theo chứa 2 số nguyên D và E – chỉ số của 2 thành phố cần truy vấn.

Kết qủa

Mỗi dòng trong số K dòng chứa 2 số nguyên – độ dài của con đường ngắn nhất và dài nhất trên đường nối giữa 2 thành phố tương ứng.

Ví dụ

D li u: ữ ệ

5

2 3 100

4 3 200

1 5 150

1 3 50

Trang 2

2 4

3 5

1 2

K t q a ế ủ

100 200

50 150

50 100

SPOJ – STONE1 – R ả i s ỏ i

Xét trò chơi rải sỏi với một người chơi như sau:

Cho cây T và một đống sỏi gồm K viên Ở mỗi bước người ta lấy 1 viên sỏi từ đống sỏi

và đặt vào một nút lá tuỳ ý Nếu nút p có r nút lá và tất cả các nút lá đều đã có sỏi thì người ta gom tất cả các viên sỏi ở các nút lá lại, đặt 1 viên ở nút p, xoá các nút lá và trả

r – 1 viên sỏi còn lại vào đống sỏi.

Trò chơi kết thúc khi đã đặt được 1 viên sỏi vào nút gốc

Yêu cầu: cho cây T, xác định số viên sỏi tối thiểu cần có để trò chơi có thể kết thúc Cây có n nút (N <= 400), nút gốc được đánh số 1.

Input

 Dòng đầu: số n.

 Một số dòng tiếp theo, mỗi dòng có dạng: i m i1 i2 … im Trong đó m là số nút con của nút i; i1, i2, …, im: các nút con của nút i.

Output

Số lượng viên sỏi ít nhất cần có.

Example

Input:

7

1 2 2 3

2 2 5 4

3 2 6 7

Output:

3

Posted on 23/07/2014by connhangheovodanh

Trang 3

ĐỀ BÀI :

Lucky Numbers – LUCKYNUM – SPOJ

Trong một số nước châu Á, 8 và 6 được coi là những chữ số may mắn Bất cứ số

nguyên nào chỉ chứa chữ số 8 và 6 được coi là số may mắn, ví dụ 6, 8, 66,

668, 88, 886 … Nguyên là một học sinh rất thích toán Nguyên thích các

số may mắn nhưng chỉ thích các số có dạng

S = 8…86…6

trong đó S có ít nhất một chữ số và chữ số 6 và 8 không nhất thiết phải đồng

thời xuất hiện Ví dụ, 8, 88, 6, 66, 86, 886, 8866 … là các số có dạng S Cho trước một số nguyên dương X (1 < X < 10 000), Nguyên muốn tìm số may

mắn nhỏ nhất dạng S, có không quá 200 chữ số và chia hết cho X

Nhiệm vụ của bạn là viết một chương trình tìm số đó cho Nguyên

Dữ liệu vào

Dữ liệu vào gồm nhiều bộ dữ liệu tương ứng với nhiều test Dòng đầu tiên chứa

một số nguyên dương không lớn hơn 20 là số lượng các bộ dữ liệu Các dòng tiếp theo chứa các bộ dữ liệu

Trên mỗi dòng tiếp theo chứa một số nguyên X tương ứng với mỗi bộ dữ liệu

Dữ liệu ra

Với mỗi bộ dữ liệu, ghi ra trên một dòng số may mắn dạng S nhỏ nhất chia hết

cho X Trường hợp không tồn tại số S có không quá 200 chữ số như vậy, ghi -1

Ví dụ

D li u vào ữ ệ

4

6

8

43

5

D li u ra ữ ệ

6

8

86

-1

VOI05 Bộ sưu tập – COLLECT – SPOJ

Trang 4

Posted on 23/07/2014by connhangheovodanh

ĐỀ BÀI :

VOI05 B ộ s ư u t ậ p – COLLECT – SPOJ

Một bộ sưu tập tiền xu cổ được coi là có giá trị phải gồm không ít hơn Z 0 đồng

đầu của Alibaba có một số lượng nhất định các đồng tiền vàng, bạc và đồng nhưng chưa phải là một bộ sưu tập có giá trị

Tại Trụ sở của Hiệp hội những người sưu tầm tiền cổ có đặt một máy đổi tiền để

giúp hội viên đổi được các bộ sưu tập có giá trị

Tuy nhiên, máy đổi chỉ hỗ trợ việc đổi tiền trọn gói theo quy tắc đổi gói (Z1, S1,

M1) lấy gói (Z2, S2, M2) đồng tiền Các quy tắc đổi tiền khác nhau từng đôi một, được gán số hiệu tuần tự 1,2,3, và được công bố trước Hội viên

có thể tạo gói tiền thích hợp từ bộ sưu tập của mình để thực hiện việc đổi tiền Các đồng tiền nhận được sau mỗi lần đổi được gộp lại với các đồng tiền mà hội viên đang có để thành một bộ sưu tập mới và có thể được sử dụng để đổi trong những lần sau nếu cần Số lần đổi không hạn chế, tuy nhiên, là người thực dụng, Alibaba luôn cố gắng giảm tới mức tối đa số lần đổi tiền Mặt khác, để ngăn chặn việc đầu cơ, Hiệp hội quy định, trong

mọi thời điểm, mỗi hội viên không được giữ quá 4 đồng tiền mỗi

loại và không được phép đổi tiếp khi đã đổi được một bộ sưu tập

có giá trị.

Yêu cầu: Cho biết số lượng các đồng tiền vàng, bạc, đồng mà Alibaba có ban đầu

và các quy tắc đổi tiền Hãy chỉ ra tất cả các bộ sưu tập tiền cổ có giá trị

mà Alibaba có thể có được sau một số lần đổi không vượt quá k cho trước

Input

Dòng đầu ghi số nguyên dương K ( K <= 1000 )

Dòng thứ 2 ghi 6 số nguyên không âm Z, S, M, Z 0 , S 0 , M 0 ( 0 <= Z, S, M, Z 0 ,

Các dòng tiếp theo mỗi dòng ghi 6 số nguyên không âm Z 1 , S 1 , M 1 , Z 2 , S 2 ,

M 2 xác định một quy tắc đổi tiền (0 <= Z1, S1, M1, Z2, S2, M2 <= 4 )

Output

Nếu không tồn tại cách đổi để có được bộ sưu tập có giá trị, file kết quả chỉ gồm

một số -1

Trang 5

Trong trường hợp ngược lại, dòng đầu ghi số v là số các bộ tiền cổ có giá trị mà

Alibaba có thể đổi được

Dòng thứ i trong v dòng tiếp theo ghi 4 số nguyên Z i , S i , M i , k i mô tả bộ sưu tập

có giá trị thứ i và số lần đổi ki ít nhất không vượt quá k cần thực hiện để có

được bộ sưu tập ấy ( Các bộ Z i , S i , M i phải đưa ra theo thứ tự từ

điển )

Posted on 13/06/2014by connhangheovodanh

ĐỀ BÀI :

D

Ạ O CH Ơ I Đ Ồ NG C Ỏ – PWALK – SPOJ

Có N con bò (1 <= N <= 1,000), để thuận tiện ta đánh số từ 1->N, đang ăn cỏ

trên N đồng cỏ, để thuận tiện ta cũng đánh số các đồng cỏ từ 1->N Biết rằng con bò i đang ăn cỏ trên đồng cỏ i

Một vài cặp đồng cỏ được nối với nhau bởi 1 trong N-1 con đường 2 chiều mà

các con bò có thể đi qua Con đường i nối 2 đồng cỏ A_i và B_i (1 <= A_i

<= N; 1 <= B_i <= N) và có độ dài là L_i (1 <= L_i <= 10,000)

Các con đường được thiết kế sao cho với 2 đồng cỏ bất kỳ đều có duy nhất 1

đường đi giữa chúng Như vậy các con đường này đã hình thành 1 cấu trúc cây

Các chú bò rất có tinh thần tập thể và muốn được thăm thường xuyên Vì vậy lũ

bò muốn bạn giúp chúng tính toán độ dài đường đi giữa Q (1 <= Q <= 1,000) cặp đồng cỏ (mỗi cặp được mô tả là 2 số nguyên p1,p2 (1 <= p1 <= N; 1 <= p2 <= N)

DỮ LIỆU

 Dòng 1: 2 số nguyên cách nhau bởi dấu cách: N và Q

 Dòng 2 N: Dòng i+1 chứa 3 số nguyên cách nhau bởi dấu cách: A_i, B_i,

và L_i

 Dòng N+1 N+Q: Mỗi dòng chứa 2 số nguyên khác nhau cách nhau bởi dấu cách mô tả 1 yêu cầu tính toán độ dài 2 đồng cỏ mà lũ bò muốn đi thăm qua lại p1 và p2

KẾT QUẢ

 Dòng 1 Q: Dòng i chứa độ dài đường đi giữa 2 đồng cỏ ở yêu cầu thứ i

VÍ DỤ

D li u ữ ệ

Trang 6

4 2

2 1 2

4 3 2

1 4 3

1 2

3 2

K t qu ế ả

2

7

GIẢI THÍCH

Yêu cầu 1: Con đường giữa đồng cỏ 1 và 2 có độ dài là 2 Yêu cầu 2: Đi qua con

đường nối đồng cỏ 3 và 4, rồi tiếp tục đi qua con đường nối 4 và 1, và cuối cùng là con đướng nối 1 và 2, độ dài tổng cộng là 7

BIẾN ĐỔI SỐ – NUMBER – SPOJ

Posted on 12/06/2014by connhangheovodanh

ĐỀ BÀI :

BI

Ế N Đ Ổ I S Ố – NUMBER – SPOJ

Cho M máy biến đổi số được đánh số từ 1 đến M và 1 số nguyên dương N Hoạt

động của máy i được xác định bởi cặp số nguyên dương (ai,bi)

(1<=ai,bi<=N) Máy nhận đầu vào là số nguyên dương ai và trả lại ở đầu

ra số nguyên dương bi

Ta nói một số nguyên dương X có thể biến đổi thành số nguyên dương Y nếu

hoặc X=Y hoặc tồn tại dãy hữu hạn các số nguyên dương X= P1,P2,…,Pk

=Y sao cho đối với 2 phần tử liên tiếp Pi và Pi+1 bất kỳ trong dãy, luôn tìm được 1 trong số các máy đã cho để biến đổi Pi thành Pi+1

Cho trước 1 số nguyên dương T (T<=N) Hãy bổ sung thêm 1 số ít nhất các máy

biến đổi số để bất kì số nguyên dương nào từ 1 đến N đều có thể biến đổi thành T

Input

– Dòng 1: 3 số nguyên dương N, M, T (1<=N,M,T<=10^4)

Trang 7

– M dòng tiếp theo mỗi dòng chứa 1 cặp số tương ứng với một máy biến đổi số

Các số trên một dòng cách nhau bởi 1 dấu cách

Output

Ghi ra 1 dòng duy nhất chứa 1 số nguyên dương là số lượng máy biến đổi số cần

thêm

Example

Input:

6 4 5

1 3

2 3

4 5

6 5

Output:

1

QUẢNG CÁO – ADS – SPOJ

Posted on 05/06/2014by connhangheovodanh

ĐỀ BÀI : QU Ả NG CÁO – ADS – SPOJ

Nhân dịp Tết sắp đến công ty Jelly-for-Kids quyết định tăng cường việc quảng

bá sản phẩm đến người tiêu dùng Vì thế giám đốc marketing, ông Fruit-Jelly muốn gửi đi số lượng nhân viên tối đa có thể, làm nhiệm vụ tiếp thị tại đại lý trong thành phố

Trong thành phố có m con đường, n đại lý bán kẹo (đánh số từ 1 đến n) Mỗi

con đường chỉ nối trực tiếp giữa 2 đại lý, và được ký hiệu bằng chỉ số của 2 đại lý mà nó nối Đồng thời, giữa 2 đại lý bất kỳ có không quá 1 con đường nối chúng

Ông Fruit-Jelly nghĩ rằng, ông ta sẽ quản lý nhân viên dễ hơn nếu xếp mỗi

người tiếp thị trên những hành trình có tính chất thứ tự Tức là những đại

lý bán kẹo trên hành trình đó thỏa các điều kiện sau

Có đường nối trực tiếp giữa 2 đại lý liên tiếp nhau trên hành trình

Từ một đại lý bất kỳ trong hành trình có thể đi qua tất cả các đoạn đường trong

hành trình đó rồi trở về nơi xuất phát mà không đi qua đoạn đường nào quá một lần

Hành trình phân công cho mỗi nhân viên phải có ít nhất một đoạn đường chưa

có nhân viên nào khác đi tiếp thị

Trang 8

Mỗi nhân viên chỉ di chuyển trên hành trình mà anh ta được phân công Hãy

tính số lượng nhân viên tối đa mà ông Fruit-Jelly có thể xếp việc, và hành trình cụ thể mà mỗi người được xếp

Input

Dòng đầu là 2 số tự nhiên N và M (N<=2000) (M<=5000)

Trong M dòng tiếp theo, mỗi dòng ghi 2 số nguyên mô tả một đoạn đường, mỗi

đoạn đường được mô tả bởi chỉ số của 2 đại lý mà nó nối

Output

Dòng đầu tiên ghi Q là số lượng nhân viên tối đa tìm được

Example

Input:

5 6

1 2

2 4

4 5

3 5

1 3

2 3

Output:

2

THUẬT TOÁN :

Bài này chỉ cần xuất ra m-n+T với T là số thành phần liên thông trong đồ thị Dùng DFS tìm thành phần liên thông cơ bản

Posted on 31/05/2014by connhangheovodanh

ĐỀ BÀI :

G

Ặ M C Ỏ – VMUNCH – SPOJ

Bessie rất yêu bãi cỏ của mình và thích thú chạy về chuồng bò vào giờ vắt sữa

buổi tối

Trang 9

Bessie đã chia đồng cỏ của mình là 1 vùng hình chữ nhật thành các ô vuông nhỏ

với R (1 <= R <= 100) hàng và C (1 <= C <= 100) cột, đồng thời đánh dấu chỗ nào là cỏ và chỗ nào là đá Bessie đứng ở vị trí R_b,C_b và muốn ăn

cỏ theo cách của mình, từng ô vuông một và trở về chuồng ở ô 1,1 ; bên cạnh đó đường đi này phải là ngắn nhất

Bessie có thể đi từ 1 ô vuông sang 4 ô vuông khác kề cạnh

Cho bản đồ, hãy tính xem có bao nhiêu ô cỏ mà Bessie sẽ ăn được trên con

đường ngắn nhất trở về chuồng (tất nhiên trong chuồng không có cỏ đâu nên đừng có tính nhé)

Dữ liệu

 Dòng 1: 2 số nguyên cách nhau bởi dấu cách: R và C

 Dòng 2 R+1: Dòng i+1 mô tả dòng i với C ký tự (và không có dấu cách) như đã nói ở trên

Kết quả

 Dòng 1: Một số nguyên là số ô cỏ mà Bessie ăn được trên hành trình ngắn nhất trở về chuồng

Ví dụ

D li u ữ ệ

5 6

B *.

*

.**.*.

***.

* *.C

K t qu ế ả

9

Ngày đăng: 22/02/2017, 21:28

TỪ KHÓA LIÊN QUAN

w