Top posts

  • 10 thuật toán đang chế ngự thế giới chúng ta [part 1]

    26 August 2015

    Thuật toán là gì? Về mặt lí thuyết, thuật toán là một thủ tục tính toán, nhận đầu vào là một tập các giá trị được gọi là input và tạo ra một tập các giá trị được gọi là output. Vì vậy thuật toán là một chuỗi các bước biến đổi input thành output. -Nguồn:...

  • Chiến thuật ACM [3x1=4]

    25 June 2015 ( #ACM )

    Điều căn bản: Luyện tập, Luyện tập, Luyện tập! Để chiến thuật được thực hiện hiệu quả, bạn không cần phải là thiên tài bởi vì việc luyện tập có thể đưa bạn đi đủ xa. Trong triết lí của chúng tôi, có 3 đặc điểm mấu chốt để tạo nên 1 team xuất sắc: Kiến...

  • [LCA] Jakarta 2010 - Lightning Energy Report

    10 August 2014 ( #LCA )

    Cho 1 cây n đỉnh (2N50, 000) và Q thao tác (Q<=50000). Mỗi truy vấn có dạng (u v c) : cộng vào mỗi nút trên đường đi từ u đến v 1 giá trị c (<=100). Ban đầu mỗi nút có giá trị = 0. Yêu cầu: tìm giá trị mỗi nút sau khi thực hiện Q thao tác Sample Input...

  • [Dịch] Chiến thuật ACM-ICPC [3x1=4]

    12 June 2014 ( #ACM )

    Điều căn bản: Luyện tập, Luyện tập, Luyện tập! Để chiến thuật được thực hiện hiệu quả, bạn không cần phải là thiên tài bởi vì việc luyện tập có thể đưa bạn đi đủ xa. Trong triết lí của chúng tôi, có 3 đặc điểm mấu chốt để tạo nên 1 team xuất sắc: Kiến...

  • [DP level 2] UVA 1172 The Bridges of ...

    24 July 2014 ( #ACM, #DP )

    King Beer muốn xây 1 vài cây cầu kết nối các ngân hàng ở 2 bên bờ sông. Cầu chỉ nối được 2 ngân hàng sử dụng cùng hệ điều hành. Và 2 cây cầu ko thể cắt nhau Giá trị kinh tế của 1 cây cầu = tổng gia trị giao thương của 2...

  • [MST] Jakarta 2008- Anti Brute Force Lock

    12 August 2014 ( #MST )

    What's done is done. But in order to slow down future robbers' attack, Panda Security Agency (PSA) has devised a new safer lock with multiple keys. Instead of using only one key combination as the key, the lock now can have up to N keys which has to be...

  • [Nim game] Jakarta 2010 - Playing With Stones

    10 August 2014 ( #Nim game, #Game theory )

    Cho n đống sỏi, đống i chưa a[i] viên. Ở mỗi lượt đi, mỗi người phải lấy ra ít nhất 1 viên từ 1 đống, nhưng số sỏi lấy ra phải <= 1/2 số viên sỏi trong đống đó. Người chơi nào ko thể lấy sỏi ra sẽ thua. Xác định xem người đi trước có thể thắng ko? (n<=100,...

  • [Dp Optimization 2] Member Single Round Match 468 R1 - Div I RoadOrFlightHard

    26 July 2014 ( #DP, #DP Optimization )

    Đức vua đang ở thành phố 0, Hoàng hậu đang ở thành phố n. Có các con đường bộ và bay nối giữa mọi cặp thành phố (i,i+1). Thời gian để đi bộ từ i => i+1 được biểu diễn = roadTime[i] roadTime[0] = roadFirst mod roadMod; for i = 1 to N-1 roadTime[i] = (roadTime[i-1]*roadProd...

  • [Dp level 2] UVA 11832 Account Book

    24 July 2014 ( #ACM, #Dp Bitmask )

    Cho dãy n (<=40) số và giá trị F. Ta có thể điền +, - vào trước mỗi số để tạo ra tổng đại số = F theo nhiều cách: Vd 6+7-7+7-1=12 6-7+7-7-1=12 7+7-7+7-1=12 Tuy nhiên , để tạo ra tổng F, ta có thể biết chắc chắn trước số 6...

  • [Dp level 2] UVA 10898 Combo Deal

    24 July 2014 ( #ACM, #Dp Bitmask )

    1 cửa hàng bán các sản phẩm theo 2 kiểu: đơn lẻ hoặc combo. Ví dụ Hamburger $3.49 Fries $0.99 Pop $1.09 Ice Cream $2.19 Value Meal (1 Hamburger, 1 Fries, 1 Pop) $4.79 Lovers-Only (2 Hamburgers, 2 Fries, 2 Pops, 1 Ice Cream) $9.99   Cho danh...

  • [Nim game] CF 15C. Industrial Nim

    11 August 2014 ( #Nim game, #Game theory )

    Có n mỏ đá. Mỏ đá i có mi xe đá: xe 1 chứa xi viên đá xe 2 chưa xi+1 viên đá ... xe mi chứa xi+mi-1 viên đá Ở mỗi lượt chơi, người chơi sẽ được chọn 1 xe đá bất kì và lấy ra 1 lượng đá bất kì từ nó. Người lấy đk những viên đá cuối cùng sẽ chiến thắng....

  • [Dp bitmask] Baby-spoj

    05 August 2014 ( #Dp Bitmask, #DP Optimization )

    Một đứa bé cố gắng giải quyết bài toán n quân hậu: đặt n quân hậu lên bàn cờ n*n sao cho ko có 2 quân nào ăn được nhau. Bé đa thành công trong việc đặt n quân hậu lên để ko có 2 quân nào cùng hàng và cột nhưng vẫn còn khả năng 2 quân nằm trên cùng 1 đường...

  • [Dp Optimization 1] 2010 TopCoder High School Round 1 - Division I TheSequencesLevelThree

    26 July 2014 ( #DP, #DP Optimization )

    Cho dãy A gồm n phần từ nguyên đôi một phân biệt (n<=50, A[i]<=1e9) và giá trị k. Đếm số cách sắp xếp dãy A thành dãy số dạng "mountain" có chênh lệch giữa 2 phân tử liên tiếp <=k. Một dãy số đgl "mountain" nếu tồn tại 0

  • [Dp level 3] UVA 1240 ICPC Team Strategy

    25 July 2014 ( #ACM, #Dp Bitmask )

    Chiến thuật của 1 team ACM 3 người như sau: + trong 20ph đầu học sẽ đọc đề và mỗi người sẽ xác định đk thời gian để accept mỗi bài của mình + trong 280ph còn lại họ sẽ chia nhau làm + chỉ có 1 máy tính nên tại 1 thời điểm...

  • [Meet in the middle] SUBSUMS - spoj

    04 August 2014 ( #Bitwise, #Meet in the middle )

    Cho n số (1<=n<=34) S1 đến Sn ( |Si|<=20m). Đếm số tập con S (gồm cả tập rỗng) có tổng thuộc khoảng A,B ( |A|,|B|<=500m) Input: 3 -1 2 1 -2 3 Output: 5The following 5 subsets have a sum between -1 and 2: 0 = 0 (the empty subset) 1 = 1 1 + (-2) = -1 -2...

  • Spoj VPalin POI 2006

    26 August 2014 ( #KMP, #Hashing )

    Cho n xâu palindrome, đếm số lượng cặp xâu sao cho khi ghép chúng lại ta được 1 xâu palindrome. Tổng độ dài của n xâu <= 2.000.000 Input: 3 1 a 2 bb 2 aa Output: 5 The 5 palindromes are: aa aaa aaa bbb aaaa Algorithms: Nhận xét: 1 xâu palindrome <=> period...

  • [Europe Southeastern 2004] Period

    26 August 2014 ( #KMP )

    Với mỗi prefix P của S nếu có thể viết được dưới dạng A^K (ghép liên tiếp K xâu A lại, K>1) thì in ra K Sample Input 3 aaa 12 aabaabaabaab 0 Sample Output Test case #1 2 2 3 3 Test case #2 2 2 6 2 9 3 Algorithm Xây dựng mảng prefix function của S Với...

  • [MaxMatching] Jakarta2010-Romantic Date

    10 August 2014 ( #HopcroftKarp )

    Wibowo và bạn gái chơi với 1 bộ bài. Một bộ bài bao gồm 52 quân bài. Mỗi quân bài có 1 số (2,3...10,J,Q,K,A) và 1 biểu tượng( từ yếu đến mạnh: D,C,H,S). Khi 2 quân bài đk so sánh thì quân nào có số cao hơn sẽ thắng. Nếu 2 quân có cùng số thì quân nào...

  • [Dp bitmask] TRSTAGE-Spoj

    05 August 2014 ( #Dp Bitmask )

    Cho m thành phố, n vé xe ngựa, p đoạn đường 2 chiều nối m thành phố vs nhau. Một lữ khách đang ở tp n và muốn đi tời tp m bằng xe ngựa. Mỗi vé xe ngựa sẽ cho biết số ngựa được sử dụng trong chuyến đi đó. Càng nhiều ngựa chạy càng nhanh. - Thời gian để...

  • [Jakarta 2008] Greatest K-Palindrome Substring

    26 August 2014 ( #DP )

    Một xâu được gọi là k-palin nếu ta có thể sửa k kí tự của nó để biến nó thành palin. Cho xâu S (|S|<=1000) và số K. Tìm substring dài nhất của S là k-palin. Algorithm Xây dựng Fx[i][j] là kí tự ít nhất cần sửa để đoạn (i,j) của S là palin FOR(k,3,n) FOR(i,0,n-1)...

  • SRM 433 MagicWord

    26 August 2014 ( #KMP )

    Xét xâu T gồm L kí tự. T(i) là xâu xoay vòng của T được định nghĩa như sau: |T(i)|=L T(i)[j]=T[(i+j)%L] ví dụ: T=abcde => T(1)=bcdea T được gọi là MagicWord nếu có chính xác K vị trí i sao cho T(i)=T Cho mảng S gồm N từ. Với mỗi hoán vị p[0],p[1]..,p[N-1]...

  • [OOP] const char *p vs char const *p

    17 March 2015 ( #OOP )

    const char* p kí tự mà p trỏ tới là hằng => có ko thể thay đổi giá trị của kí tự đó nhưng có thể có thể trỏ p tới ô nhớ khác char const* p pointer p là hằng => có thể thay đổi dữ liệu mà nó trỏ tới mà ko thể thay đổi ô nhớ mà p trỏ tới. char a = 'x';...

  • [MST] UVA 10600 - ACM Contest and Blackout

    12 August 2014 ( #MST )

    Tìm cây khung nhỏ nhất và cây khung nhỏ thứ 2 Algorithms: Tìm cây khung nhỏ nhất rồi đánh dấu các cạnh thuộc cây khung nhỏ nhất Với mỗi cạnh đã đánh dấu tìm cây khung nhỏ nhất ko chứa cạnh đó: - Union tất cả các cạnh đk đánh dấu ngoại trừ cạnh đang xét...

  • [MST] Kaohsiung 2006 The Bug Sensor Problem

    12 August 2014 ( #MST )

    Đề khó hiểu vc. Tóm tắt Cho n cột wifi trên mặt phẳng và m thiết bị thu phát. Hai cột wifi có thể trao đổi thông tin nếu khoảng cách giữa chúng <= D. M thiết bị thu phát sẽ được lắp vào m cột wifi (m<=n) , thiết bị này sẽ truyền thông tin về căn cứ. Tìm...

  • [Wp] Lấy dữ liệu json từ API google map

    12 June 2014 ( #Window phone )

    Tạo DataContract cho json: { "routes" : [ { "legs" : [ { "distance" : { "text" : "1,1 km", "value" : 1126 }, "steps" : [{ "duration" : "2 phút" }] }] }] } DataContract: [DataContract] class DirectionDataContract { [DataMember(Name = "routes")] public...

1 2 > >>