Đến nội dung


Hình ảnh

Hỏi cách tạo đường đồng mức


  • Please log in to reply
52 replies to this topic

#1 doanduyhung

doanduyhung

    biết vẽ spline

  • Members
  • PipPip
  • 90 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 19 December 2007 - 12:19 PM

Bác nào có thuật toán tạo đường đồng mức từ tập hợp các cao độ text ko.
Em muốn tham khảo để viết lại băng lisp ấy mà.
Em gửi các bác 1 chương trình vẽ đường đồng mức nguồn từ diển đàn ketcau.com mà em sưu tầm được (tất nhiên là có bẻ khóa rồi và mã nguồn đóng), các bác tham khảo nhé.
Mong mọi người góp ý.
**********************************
http://www.cadviet.com/upfiles/cadlisp.rar
Tuy nhiên chương trình này còn 1 số lỗi
**********************************
:)
  • 0

#2 doanduyhung

doanduyhung

    biết vẽ spline

  • Members
  • PipPip
  • 90 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 19 December 2007 - 05:07 PM

Sao không có bác nào có ý kiến ý cò nào hết vậy nhỉ
:)
  • 0

#3 Nguyen Hoanh

Nguyen Hoanh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 4105 Bài viết
Điểm đánh giá: 4495 (đỉnh cao)

Đã gửi 19 December 2007 - 05:28 PM

Sao không có bác nào có ý kiến ý cò nào hết vậy nhỉ
:)

Đơn giản là ngại.

Ví dụ trường hợp ngại của tôi:
Trong bộ cài có phần dành cho cad2002, cad2004, CAD của tôi là 2007. Cài xong chưa biết chạy có đúng không, nhưng chắc chắn là mình không cần dùng đến cho công việc. Phần các mềm có đặc điểm là dễ cài khó gỡ, ít ai muốn thử.

Vấn đề từ các điểm 3D nội suy ra mặt mesh để có được đường đồng mức, trên diễn đàn cũng đã bàn nhiều. Chủ yếu là sử dụng các phần mềm có sẵn làm cho nhanh và chính xác.

Để tạo một chương trình lisp làm việc này hơi bị cồng kềnh. Người viết phải là người am tường về lisp, về cấu trúc dữ liệu, về thuật toán hình học. Câu hỏi của bạn khó có một câu giải đáp là vì thế.

Nếu bạn am tường về lập trình và thuật toán hình học, tôi có một thuật giải như sau (tôi đã làm nghiên cứu khoa học về vấn đề này hồi còn là sinh viên):
1. Xây dựng mạng tam gác Delaunay với các đỉnh là các điểm đã cho. Mạng tam giác Delaunay với tính chất của nó (ngược với biểu đồ Voronoi) sẽ đảm bảo sai số ít nhất cho mặt mesh nội suy sau này. Vì nó thỏa mãn một điều kiện quan trọng: một điểm bất kỳ nằm trong 1 tam giác Delaunay, thì khoảng cách min từ nó tới các điểm đã cho luôn là (1 trong 3) đỉnh của tam giác chứa nó.

Để xây dựng mạng tam giác Delaunay có nhiều thuật, thuật toán tôi sử dụng đơn giản như sau:
- Tìm bao lồi của tập đỉnh trên. Và xem nó như một đa giác.
- Từ 2 đỉnh kề nhau bất kỳ của đa giác, tìm thêm một đỉnh nằm trong đa giác để tạo thành 1 tam giác thỏa mãn: có bán kính đường tròn ngoại tiếp lớn nhất nhưng không chứa bất cứ một đỉnh nào chưa xét. Thêm đỉnh mới này vào đa giác, sẽ tạo thành một đường bao mới (không lồi nữa).
- lặp đi lặp lại cho đến khi hết đỉnh.
- Các tam giác được tìm chính là mạng tam giác Delaunay.

2. Từ mạng tam giác Delaunay, dễ dàng có được mặt mesh nội suy phủ qua n điểm đã cho trong không gian.
3. Từ mặt mesh này, dễ dàng có được đường đồng mức bằng các phép giao mặt phẳng.

Chân lý thì đơn giản vậy, nhưng tổ chức để viết code thì nhì nhằng. Nghĩ lại thấy mệt.
  • 0

#4 ssg

ssg

    biết lệnh adcenter

  • Vip
  • PipPipPipPipPipPipPip
  • 1228 Bài viết
Điểm đánh giá: 1087 (rất tốt)

Đã gửi 20 December 2007 - 08:21 AM

Sao không có bác nào có ý kiến ý cò nào hết vậy nhỉ
:)

Mình cũng ngại như anh Hoành:
- Đã từng "ngâm cứu" cái này rồi. Kết quả: kiếm phần mềm nào có sẵn mà dùng! Thật ra mình chẳng bao giờ dùng vì không phải chuyên ngành, chỉ là thử tìm hiểu theo yêu cầu của một số bạn thôi.
- Các phần mềm vô danh, đúng là dễ cài khó gỡ (chưa chắc đã hay ho gì mà cứ làm ra vẻ). Nếu là mã nguồn mở hoặc "click and play" thì mình có thể xem và tham khảo chút ít, còn nếu phải setup thì mời vào Recycle Bin!
"Ý kiến ý cò" chân tình: hãy quên cái này đi, để thời gian nghiên cứu cái khác hiệu quả hơn!
  • 0

#5 doanduyhung

doanduyhung

    biết vẽ spline

  • Members
  • PipPip
  • 90 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 20 December 2007 - 08:39 AM

Đơn giản là ngại.

Ví dụ trường hợp ngại của tôi:
Trong bộ cài có phần dành cho cad2002, cad2004, CAD của tôi là 2007. Cài xong chưa biết chạy có đúng không, nhưng chắc chắn là mình không cần dùng đến cho công việc. Phần các mềm có đặc điểm là dễ cài khó gỡ, ít ai muốn thử.

Vấn đề từ các điểm 3D nội suy ra mặt mesh để có được đường đồng mức, trên diễn đàn cũng đã bàn nhiều. Chủ yếu là sử dụng các phần mềm có sẵn làm cho nhanh và chính xác.

Để tạo một chương trình lisp làm việc này hơi bị cồng kềnh. Người viết phải là người am tường về lisp, về cấu trúc dữ liệu, về thuật toán hình học. Câu hỏi của bạn khó có một câu giải đáp là vì thế.

Nếu bạn am tường về lập trình và thuật toán hình học, tôi có một thuật giải như sau (tôi đã làm nghiên cứu khoa học về vấn đề này hồi còn là sinh viên):
1. Xây dựng mạng tam gác Delaunay với các đỉnh là các điểm đã cho. Mạng tam giác Delaunay với tính chất của nó (ngược với biểu đồ Voronoi) sẽ đảm bảo sai số ít nhất cho mặt mesh nội suy sau này. Vì nó thỏa mãn một điều kiện quan trọng: một điểm bất kỳ nằm trong 1 tam giác Delaunay, thì khoảng cách min từ nó tới các điểm đã cho luôn là (1 trong 3) đỉnh của tam giác chứa nó.

Để xây dựng mạng tam giác Delaunay có nhiều thuật, thuật toán tôi sử dụng đơn giản như sau:
- Tìm bao lồi của tập đỉnh trên. Và xem nó như một đa giác.
- Từ 2 đỉnh kề nhau bất kỳ của đa giác, tìm thêm một đỉnh nằm trong đa giác để tạo thành 1 tam giác thỏa mãn: có bán kính đường tròn ngoại tiếp lớn nhất nhưng không chứa bất cứ một đỉnh nào chưa xét. Thêm đỉnh mới này vào đa giác, sẽ tạo thành một đường bao mới (không lồi nữa).
- lặp đi lặp lại cho đến khi hết đỉnh.
- Các tam giác được tìm chính là mạng tam giác Delaunay.

2. Từ mạng tam giác Delaunay, dễ dàng có được mặt mesh nội suy phủ qua n điểm đã cho trong không gian.
3. Từ mặt mesh này, dễ dàng có được đường đồng mức bằng các phép giao mặt phẳng.

Chân lý thì đơn giản vậy, nhưng tổ chức để viết code thì nhì nhằng. Nghĩ lại thấy mệt.

Cai tam giác Delaunay thi em lam duoc roi, de thu tiep nghien cuu ve phép giao mặt phẳng xem sao
thank bac Hoanh nhe
  • 0

#6 Nguyen Hoanh

Nguyen Hoanh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 4105 Bài viết
Điểm đánh giá: 4495 (đỉnh cao)

Đã gửi 20 December 2007 - 09:30 AM

Cai tam giác Delaunay thi em lam duoc roi, de thu tiep nghien cuu ve phép giao mặt phẳng xem sao
thank bac Hoanh nhe

Thế thì bạn đã làm được 98% khối lượng công việc.

Phép giao mặt phẳng trong trường hợp này rất đơn giản. Bởi các mặt phẳng cắt mặt mesh trong san nền thường là mặt phẳng đặc biệt. VD: Các đường đồng mức là giao tuyến của mặt mesh với mặt phẳng nằm ngang, các trắc dọc là giao tuyến của mặt mesh với mặt phẳng thẳng đứng. Khi tìm giao điểm các mặt phẳng này, không cần giải bài toán không gian mà chỉ cần giải bài toán phẳng. Tức là tìm giao một tam giác (ô lưới delaunay) trên mặt bằng hoặc mặt đứng với một đường thẳng (là hình chiếu của mặt phẳng cắt). Khi đã tìm được đoạn thẳng giao điểm thì chiếu ngược trở lại sẽ có kết quả chính xác. Tập hợp các đoạn giao tuyến của mặt phẳng với lưới delaunay sẽ tạo nên giao tuyến mặt mesh với mặt phẳng đó.
  • 0

#7 doanduyhung

doanduyhung

    biết vẽ spline

  • Members
  • PipPip
  • 90 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 20 December 2007 - 10:21 AM

Thế thì bạn đã làm được 98% khối lượng công việc.

Phép giao mặt phẳng trong trường hợp này rất đơn giản. Bởi các mặt phẳng cắt mặt mesh trong san nền thường là mặt phẳng đặc biệt. VD: Các đường đồng mức là giao tuyến của mặt mesh với mặt phẳng nằm ngang, các trắc dọc là giao tuyến của mặt mesh với mặt phẳng thẳng đứng. Khi tìm giao điểm các mặt phẳng này, không cần giải bài toán không gian mà chỉ cần giải bài toán phẳng. Tức là tìm giao một tam giác (ô lưới delaunay) trên mặt bằng hoặc mặt đứng với một đường thẳng (là hình chiếu của mặt phẳng cắt). Khi đã tìm được đoạn thẳng giao điểm thì chiếu ngược trở lại sẽ có kết quả chính xác. Tập hợp các đoạn giao tuyến của mặt phẳng với lưới delaunay sẽ tạo nên giao tuyến mặt mesh với mặt phẳng đó.

Ô hô để em thử cái.
Chúc bác 1 ngày vui vẻ
  • 0

#8 Nộ Thiên

Nộ Thiên

    biết lệnh ddedit

  • Members
  • PipPipPipPip
  • 297 Bài viết
Điểm đánh giá: 133 (tàm tạm)

Đã gửi 20 December 2007 - 12:01 PM

Nói giao mặt phẳng là nói to tát vậy thôi.
Chứ thật ra chỉ cần:
Quét qua tất cả các tam giác.
Tam giác nào có cao độ cả 3 đỉnh đều lớn hơn hoặc nhỏ hơn cao độ dường đồng mức thì bỏ qua.
Chỉ xét các tam giác vừa có đỉnh thấp vừa có đỉnh cao.
Sau đó chỉ cần nội suy 2 điểm có cao độ bằng cao độ đường đồng mức nằm trên 2 trong 3 cạnh của tam giác là đc.
Tiếp nối 2 điểm này lại.
  • 0

#9 Theghost

Theghost

    biết dimlinear

  • Members
  • PipPipPipPipPip
  • 309 Bài viết
Điểm đánh giá: 31 (tàm tạm)

Đã gửi 11 January 2008 - 09:07 PM

Bác muốn có chương trình vẽ đường đồng mức thì sang trường XD, 3 đợt tốt nghiệp ra trường của ngành Tin học xây dựng đường đều có làm đề tài này, hiện nay mình không có đề tài này nhưng mà khi nào lấy được sẽ post lên cho bạn
  • 0
Có khi nào trên đường đời tấp nập.Ta vô tình đi lướt qua nhau.Bước lơ đãng k0 ngờ đang để mất.Một tâm hồn ta đợi đã từ lâu

#10 tnmtpc

tnmtpc

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 370 Bài viết
Điểm đánh giá: 206 (khá)

Đã gửi 14 October 2008 - 08:20 PM

Bác nào có thuật toán tạo đường đồng mức từ tập hợp các cao độ text ko.
Em muốn tham khảo để viết lại băng lisp ấy mà.
Em gửi các bác 1 chương trình vẽ đường đồng mức nguồn từ diển đàn ketcau.com mà em sưu tầm được (tất nhiên là có bẻ khóa rồi và mã nguồn đóng), các bác tham khảo nhé.
Mong mọi người góp ý.
**********************************
<a href="http://www.cadviet.c...es/cadlisp.rar" target="_blank"><a href="http://www.cadviet.c...es/cadlisp.rar" target="_blank">http://www.cadviet.com/upfiles/cadlisp.rar</a></a>
Tuy nhiên chương trình này còn 1 số lỗi
**********************************
:leluoi:

Bạn là dân trắc địa, và có biết về lisp? Mình thì không rành về lisp. Có một lisp rất "đồ sộ" liên quan về tạo lưới tam giác bề mặt và vẽ đường đồng mức (mình nghĩ vậy vì nó có tên là Contour.lsp và nội dung lisp có liên quan surface và contour ). Bạn, hoặc anh em trên diễn đàn biết cách sử dụng thì chỉ cho anh em xài với.
Đây là địa chỉ của nó
http://www.koders.co...A231E0C476.aspx
  • 0

#11 kegiaumat

kegiaumat

    biết vẽ circle

  • Members
  • PipPip
  • 39 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 04 October 2011 - 04:52 PM

các bác ơi em tạo được cái thằng tạo lưới tam giác rùi nhưng mà tốc độ chạy chậm lắm. em nghiên cứu trên mạng nó bảo có thuật toán song song để cải thiện tốc độ (nó chỉ bảo qua qua chứ ko nêu thuật toán) bác nào bít món này chỉ bảo em cái
  • 0

#12 Nguyen Hoanh

Nguyen Hoanh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 4105 Bài viết
Điểm đánh giá: 4495 (đỉnh cao)

Đã gửi 04 October 2011 - 09:51 PM

các bác ơi em tạo được cái thằng tạo lưới tam giác rùi nhưng mà tốc độ chạy chậm lắm. em nghiên cứu trên mạng nó bảo có thuật toán song song để cải thiện tốc độ (nó chỉ bảo qua qua chứ ko nêu thuật toán) bác nào bít món này chỉ bảo em cái

Mình đã đọc tài liệu nói như bạn, nó tách tập điểm ra làm 2, xử lý với từng tập rồi nối 2 tập với nhau, còn cách cụ thể thế nào thì nó không nêu. Nó hơi giống ông Ferma, "tôi đã giải được bài toán này, nhưng trong khuôn khổ tờ giấy này không thể hiện hết được".

Lý thuyết là vậy, nhưng để biến lý thuyết này thành thực tế thì thà ngồi chờ chương trình lâu một chút còn hơn.
  • 0

#13 kegiaumat

kegiaumat

    biết vẽ circle

  • Members
  • PipPip
  • 39 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 04 October 2011 - 10:29 PM

hehe không bít bọn nova với bọn road plan nó dùng giải thuật thế nào nhỉ. em đau đầu món này lâu lắm rùi mà chưa giải quyết được.cảm ơn bác đã trả lời nhé. nếu có tài liệu ji món này sharing cho cho em xin với. À lúc nào bác hoành rỗi bác sang công ty chơi (em làm cùng bác lâm) để em được diện kiến bác hôm, nghe danh bác đã lâu nhưng chưa được gặp mặt bác :mellow:
  • 0

#14 redsea_tq

redsea_tq

    biết lệnh erase

  • Members
  • PipPipPip
  • 102 Bài viết
Điểm đánh giá: 13 (tàm tạm)

Đã gửi 05 October 2011 - 08:07 AM

Trong tam giác mình dùng id cho các đỉnh chứ không bê nguyên bộ point vào đỉnh đó nên tốc độ có thể nói cải thiện được khoảng 1000 lần nhưng vẫn thua xa thuật toán song song, thuật toán này khó quá nên mình không tìm hiểu về nó vì thấy đợi lâu một chút cũng được như mấy bác ở trên nói. máy mình dell cor2 2.13 chạy lưới khoảng 1000 điểm mất 10s(vậy là cũng tạm ổn)
  • 0

#15 kegiaumat

kegiaumat

    biết vẽ circle

  • Members
  • PipPip
  • 39 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 05 October 2011 - 08:26 AM

ừ thuật toán của mình là tìm một tam giác bao các point sau đó tìm một điểm thuộc tam giác đó, điểm đó chia tam giác to thành 3 hoặc 4 tam giác rồi từ 3 ,4 tam giác đó chia thành các tam giác nhỏ khác. thuật toán này chạy khoảng dưới 1500 điểm cũng tạm ổn nhưng mà nếu dùng cho khoảng 2000 điểm trở lên thì nó treo máy (hoặc chờ rất lâu). Không bít mấy cái phần mềm thương mại của VN có dùng giải thuật song song không bít. các bác đó có tự viết hay kiếm nguồn từ đâu nhỉ.Nếu tạo được lưới tam giác mà dưới 1000 điểm thì cũng chán nhẩy chả giải quyết được ji cả
  • 0

#16 redsea_tq

redsea_tq

    biết lệnh erase

  • Members
  • PipPipPip
  • 102 Bài viết
Điểm đánh giá: 13 (tàm tạm)

Đã gửi 05 October 2011 - 08:39 AM

Mình vừa chạy 1756 điểm mất 1phut+7giay bạn ah, Mình viết bằng vb nên quản lý có lẽ tốt hơn lisp và đỡ "vật vã" hơn lisp. cái này mình tự nghiên cứu và tự viết.
  • 0

#17 kegiaumat

kegiaumat

    biết vẽ circle

  • Members
  • PipPip
  • 39 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 05 October 2011 - 08:49 AM

mình cũng bít một ít vb những mà mình thấy trong cad cái vb nó không được dễ giải lắm (tùy thuộc vào từng đời cad và cái thằng cad 2011, 2012 thì phải cài thêm autocad vbaenabler vào nữa) nên mình chọn lisp làm ngôn ngữ của cad còn vba thì dùng cho excel. à mình thấy người ta nói VBA nó chạy nhanh hơn lisp nhưng mình có thấy thế đâu, tốc độ nó cũng gần như nhau có chăng thì chỉ chậm hơn 1 vài giây. Cái thằng lưới tam giác này mình cũng tự mày mò thuật toán trên mạng rùi tự viết đó
  • 0

#18 redsea_tq

redsea_tq

    biết lệnh erase

  • Members
  • PipPipPip
  • 102 Bài viết
Điểm đánh giá: 13 (tàm tạm)

Đã gửi 05 October 2011 - 09:14 AM

Nếu bạn dùng vba thì mới phải cài thêm còn nếu bạn dùng vb thì không phải cài thêm vba cho các đời cad>2010. nói chung vb là ngôn ngữ hướng đối tượng nên tốc độ nhanh hay chậm còn tùy vào người viết. Nói chung người ngoại đạo mà viết được phần tạo lưới tam giác đủ dùng là tốt rồi. ngày trước mình dùng lisp nhưng thấy nó không tiện lắm vì phần tạo giao diện và hướng đối tượng rất khó(hoặc có cái không thể làm được) nên mình chuyển qua visual basic6.0. Mình dùng vb+vba viết được phần mềm san nền Mainv1.38, dùng vb viết thoát nước dọc TNDV1.2 và hiện tại đang phát triển phần thiết kế nút giao cũng bằng vb. Nói chung nếu không có tg và trí lực để ngâm cứu món arx thì nên dùng vb sẽ mạnh hơn(mình nghĩ như thế)
  • 0

#19 kegiaumat

kegiaumat

    biết vẽ circle

  • Members
  • PipPip
  • 39 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 05 October 2011 - 09:46 AM

à bác là người viết phần mềm san nền main trong kithuatdothi à.hehe jo mới bít. phần mềm đó cũng dễ dùng nhưng mà cái quan trọng nhất là điều chỉnh hướng thoát nước lại không có (nhưng dù sao phần mềm đó cũng ok). mình cũng đã phát triển được một phần mềm hoàn toàn viết bằng lisp trên nền thằng land. mình thấy cũng ok phết (san nền trên mọi địa hình mọi hình thái và thoát nước thì tùy chỉnh, bản vẽ thì tùy mình hiệu chỉnh được nên cũng khá đẹp) . mình cũng chỉ bít phọt phẹt tí vba thui chứ vb for cad thì mình cũng chưa ngâm cứu. hôm nào có thời gian chắc nghe theo lời bác ngâm cứu ít, bác có tài liệu ji về vb for cad bác sharing cho thằng em ít nhé (tridungtecco2@gmai.com). à cái thằng arx cũng đã từng xem qua nhưng hoa hết cả mắt ko hỉu ji hết (chắc tại em ko bít ji về c)
  • 0

#20 TRUNGNGAMY

TRUNGNGAMY

    biết lệnh block

  • Members
  • PipPipPipPipPipPip
  • 401 Bài viết
Điểm đánh giá: 91 (tàm tạm)

Đã gửi 08 October 2011 - 06:17 PM

ừ thuật toán của mình là tìm một tam giác bao các point sau đó tìm một điểm thuộc tam giác đó, điểm đó chia tam giác to thành 3 hoặc 4 tam giác rồi từ 3 ,4 tam giác đó chia thành các tam giác nhỏ khác. thuật toán này chạy khoảng dưới 1500 điểm cũng tạm ổn nhưng mà nếu dùng cho khoảng 2000 điểm trở lên thì nó treo máy (hoặc chờ rất lâu). Không bít mấy cái phần mềm thương mại của VN có dùng giải thuật song song không bít. các bác đó có tự viết hay kiếm nguồn từ đâu nhỉ.Nếu tạo được lưới tam giác mà dưới 1000 điểm thì cũng chán nhẩy chả giải quyết được ji cả

Về việc chạy lâu mình có ý kiến thế này :
- Thường thì các giải thuật sắp xếp tìm kiếm trong dữ liệu một chiều chúng ta đã có những giải thuật chuẩn và những hàm chuẩn mà giáo trình hay ngôn ngữ lập trình cung cấp. Tuy nhiên, khi làm việc với dữ liệu 2 chiều hay 3 chiều, chúng ta ít hay chưa học đc (trong các sách dạy lập trình) hay kg được hỗi trợ các hàm hay các giải thuật này trong ngôn ngữ lập trình (cũng có thể bản thân mình chưa biết). Ví dụ : tìm điểm trong dữ liệu điểm gần điểm đã cho hay đoạn thẳng trong dữ liệu điểm gần điểm đã cho mà mình đã đề cập trên chủ để khác. Nếu chúng ta tự viết những hàm này theo giải thuật tuần tự thì nó sẽ chạy rất lâu. Do đó, để có thể cải thiện tốc độ cần tổ chức dữ liệu và giải thuật sao cho việc sắp xếp tìm kiểm điểm trong không hai hay ba chiều thật nhanh (tất nhiên trong các phần mềm lớn người ta đã làm các vđ này tuy nhiên chưa hẳn là tối ưu), mà vđ này quả kg đơn giản tý nào.
- Các bạn có thể thử viết hàm tìm kiếm điểm trong dữ liệu điểm gần điểm cung cấp theo giải thuật tuần tự sẽ thấy. Khi dữ liệu tăng lên hàng trăm ngàn điềm nó sẽ chạy rất lâu
Nếu các bạn yêu thích hay có tâm huyết về các giải thuật trong kg gian 2 hay 3 chiều chúng ta có thể tìm hiểu trao đổi thêm
  • 0