Sau khi đầu tư NFT thất bại,
đã hạ quyết tâm phục thù để làm giàu trở lại cũng trên nền tảng các blockchain. Nhưng rút kinh nghiệm từ lần trước, lần này anh quyết định tự tạo ra blockchain của riêng mình để dễ dàng lừa đảo người khác hơn. Khổ nỗi, một thằng lập trình viên quèn như anh lấy đâu ra năng lực để tạo ra một đồng coin mới. Chính vì vậy, anh chỉ có thể làm một trình giả lập blockchain, vì dù sao thì những con gà bị lùa cũng không hiểu biết lắm.Với nỗ lực marketing hết sức mình, quảng cáo phủ sóng rộng rãi, thuê vô số KOL đăng bài dụ dỗ, rất nhiều con gà đã rơi vào tròng. Họ sử dụng nền tảng blockchain của
để giao dịch tiền ảo với nhiều mục đích khác nhau. Thế nhưng khác với blockchain thông thường là một hệ thống DLT - Distributed Ledger Technology có đặc điểm nổi bật nhất là tính phi tập trung (decentralized), thì “blockchain” của lại là một bảng dữ liệu được host trên GitHub cá nhân, với các khối mang ID ngẫu nhiên được xâu chuỗi.Tiếc thay, một người hâm mộ của
đã phát hiện ra những điểm bất thường này, và yêu cầu anh phải sao kê đầy đủ xem người dùng bây giờ đang có bao nhiêu tiền ảo trên nền tảng. Vốn chỉ là một bảng dữ liệu vô nghĩa, anh không biết phải làm sao để xử lí lượng dữ liệu khổng lồ này. Là những lập trình viên tài năng, hãy giúp đỡ tính toán xem mỗi người có bao nhiêu tiền nhé!Ở một ô có ID \(N\) nằm tại https://malego290704.github.io/apis/aprilfools2022crypto/{ID}.txt
có các thông tin lần lượt là: ID của ô phía trước \(N_{pre}\), tên người chuyển tiền \(TX_{sender}\), tên người nhận tiền \(TX_{receive}\), số tiền được chuyển \(TX_{amount}\).
Thứ tự của các ô phụ thuộc vào ID của các ô được liên kết, với ô có ID \(N_X\) sẽ đứng liền trước ô có \(N_{pre} = N_X\). Ô đầu tiên của chuỗi là ô có \(N_{pre}\) là \(0\). Với các ô còn lại, ID là một số nguyên không âm có 4 chữ số (tính cả những chữ số 0 ở đầu). Ô cuối cùng của chuỗi là ô không có ô nào khác đứng sau.
Ví dụ:
Ô có ID \(0001\) nằm tại https://malego290704.github.io/apis/aprilfools2022crypto/0001.txt có dữ liệu là:
0567 KSUMNOLE BeTapDi 125639
Vậy trong chuỗi, ô \(0001\) đứng liền sau ô \(0567\), có nội dung là KSUMNOLE chuyển cho \(125639\) đồng.
Ô có ID \(0002\) nằm tại https://malego290704.github.io/apis/aprilfools2022crypto/0002.txt có dữ liệu là:
0112 BeTapDi CarlavierVN 377946
Vậy trong chuỗi, ô \(0002\) đứng liền sau ô \(0112\), có nội dung là chuyển cho \(377946\) đồng.
\(TX_{sender}\) và \(TX_{receive}\) là xâu kí tự chỉ gồm các kí tự chữ a..z, A..Z và chữ số 0..9 với độ dài nhỏ hơn hoặc bằng \(10^2\).
\(TX_{amount}\) là một số nguyên dương có giá trị nhỏ hơn hoặc bằng \(10^{12}\).
Tài khoản có tên người gửi là là tài khoản tiền của cả hệ thống, tức là có vô hạn tiền để gửi cho mọi người.
Ví dụ:
Với chuỗi gồm các khối sau đây:
Khối có ID \(7197\) có nội dung là: 0 admin malego290704 1000000
Khối có ID \(4277\) có nội dung là: 7197 malego290704 zipdang2004 100000
Khối có ID \(8689\) có nội dung là: 4277 malego290704 CarlavierVN 100000
Khối có ID \(9523\) có nội dung là: 8689 zipdang2004 CarlavierVN 50000
Chuỗi kết thúc ở ô có ID \(9523\). Tại thời điểm này, có \(800000\), zipdang2004 có \(50000\) và có \(150000\).
Input
- Một dòng duy nhất gồm tên người dùng
Output
- Một dòng duy nhất in ra số tiền người dùng đó có
Example
Test 1
Input
-
Output
-
Test 2
Input
malego290704
Output
800000
Test 3
Input
Carlavier_VN
Output
150000
Bình luận
🙂