01/10/2018, 10:19
Xin ý tưởng bài PALIN spoj
SPOJ.com - Problem PALIN
...
Một bài toán tìm số thuận nghịch gần nhất với một số cho trước. Số cho trước có thể lên tới 1000000 chữ số.
A/e nào có ý tưởng cho bài toán này chỉ giáo mình với ạ. Tks
Bài liên quan
Bạn xây dựng nửa trên thì nửa dưới tự nó vào khuôn thôi. (N + O(1))
Vậy thì chừng nào mới xong 1 triệu chữ số đấy.
Đề là: Tìm số đối xứng trong hệ thập phân đứng ngay sau số đã cho. Mình thì chắc chắn là O(N) vì số đối xứng không quá xa nhau, hay nếu cần điều chỉnh thì chỉ cần đúng một lần.
Ồ, vậy thì sẽ là thế này hử:
Head
,Middle
vàTail
(phầnT
sẽ không dùng đến)4.1 Kiểm tra lại một số trường hợp đặc biệt
4.2 Ghép
H
+M
+H
đảo ngược đượcA
, nếuA
lớn hơn số ban đầu thì returnA
4.3 Ghét
H
+M
thành sốLeft
4.3.1 Số tiếp theo
L
làNext
4.3.2 Nếu
N
vàL
cùng độ dài thì tuỳ xemM
là 1 chữ số hay là null để trả về kết quả.4.3.3 Nếu
N
dài hơnL
thì cũng tuỳ xemM
là như thế nào để trả về kết quả.Độ phức tạp O(n) vì một số lệnh phải duyệt string.
Code mẫu trả về số đối xứng bằng C# (Hàm NextPalindrome)