Follow us on...
Follow us on Twitter Follow us on Facebook Watch us on YouTube

Mời tài trợ sinh nhật diễn đàn 8 năm

Tìm HD - Phần mềm tìm và xem phim HD miễn phí

Đăng ký tham gia offline VN-Zoom 8 năm tại HCM

Chiêm ngưỡng BaoMoi đẹp "tuyệt diệu" trên Windows Phone

Tài trợ VNZ Siêu phẩm Tân Kiếm Thế chibi 3D mới

Tuyển BQT VN-Zoom
Trang 2/3 đầuđầu 1 2 3 cuốicuối
kết quả từ 16 tới 30 trên 35
  1. #16
    LordTNT's Avatar
    LordTNT vẫn chưa có mặt trong diễn đàn Rìu Bạc
    Tham gia
    Aug 2012
    Bài
    440
    Cảm ơn
    0
    Điểm
    141/133 bài viết
    VR power
    0

    Default

    thì ta cũng tìm vậy đó nhưng mà nhỡ gặp 1/7000 = 0.000(142857) thì phải biết lặp vị trí nào nên cần phải có mảng nhớ vị trí số dư.

    b sau khi rút hết 2 và 5 thì có khi chu kì ko còn được như cũ
    vd 1/28 = 0.03(571428)
    nếu rút 2 ra hết thì thành ra (142857) lại phải chia 4 v.v... rắc rối lắm @.@
    Thay đổi nội dung bởi LordTNT; 07-08-2013 lúc 22:33.

  2. #17
    programmer2010's Avatar
    programmer2010 vẫn chưa có mặt trong diễn đàn Rìu Chiến Chấm
    Tham gia
    Feb 2010
    Bài
    2.495
    Cảm ơn
    37
    Điểm
    617/555 bài viết
    VR power
    7

    Default

    Trích LordTNT View Post
    b sau khi rút hết 2 và 5 thì có khi chu kì ko còn được như cũ
    vd 1/28 = 0.03(571428)
    nếu rút 2 ra hết thì thành ra (142857) lại phải chia 4 v.v... rắc rối lắm @.@
    Bởi vậy mới nói là ko áp dụng đc
    Nói chung là dùng thuật ở đây , với hàm f[b](x) = x*10 mod b, O(n) luôn.
    Viết chu kì thì 1 công đôi việc, x*10/b.
    Thay đổi nội dung bởi programmer2010; 07-08-2013 lúc 22:41.

  3. #18
    LordTNT's Avatar
    LordTNT vẫn chưa có mặt trong diễn đàn Rìu Bạc
    Tham gia
    Aug 2012
    Bài
    440
    Cảm ơn
    0
    Điểm
    141/133 bài viết
    VR power
    0

    Default



    ở đây nếu xài unordered_set thì vẫn xuống O(n) được hay chính xác hơn trong cái wiki kia nói là O(lambda + muy), nhưng nhược điểm là cần lambda bộ nhớ

    đúng là ko cần tới lambda space Mới code cái mới xài thuật toán Brent trong cái wiki kia, thử cái std::bind để viết f(x)

    Xài x*10%b cũng được. Để f(x) nó đẹp hơn

  4. Có 1 thành viên cảm ơn LordTNT cho bài viết này:
    programmer2010 (08-08-2013)

  5. #19
    Long Hoàng's Avatar
    Long Hoàng đang trong diễn đàn Rìu Bạc
    Tham gia
    Mar 2013
    Đến từ
    No Where
    Bài
    437
    Cảm ơn
    111
    Điểm
    80/76 bài viết
    VR power
    0

    Default

    Cách của mình
    Nếu chuyển đc số thập phân sang chuỗi thì xóa các chữ số đứng trước dấu chấm!
    Sau đó, ghép từng kí tự rồi tìm kí tự trong dãy + xóa đi
    vd cho dễ hiểu:
    vd: 1.123123123123123
    xóa thì còn dãy s=123123123123123
    Mình lấy kí tự đầu tiên là 1
    pos trong dãy s và xóa hết số 1 thì còn 2323232323 => 1 k phải chu kì
    tiếp, lấy 12
    pos và delete dãy s thì còn lại 33333 => 12 cũng k phải chu kì
    lấy 123
    pos và delete trong dãy s thì dãy s =''
    => 123 là chu kì
    Làm v đến hết chuỗi mà k tìm đc chu kì thì xóa 1 kí tự rồi tìm lại từ đâu =,=
    Nói chung cách mình là chạy trâu
    Thay đổi nội dung bởi Long Hoàng; 08-08-2013 lúc 12:46.

  6. #20
    programmer2010's Avatar
    programmer2010 vẫn chưa có mặt trong diễn đàn Rìu Chiến Chấm
    Tham gia
    Feb 2010
    Bài
    2.495
    Cảm ơn
    37
    Điểm
    617/555 bài viết
    VR power
    7

    Default

    ^:
    - Mỗi lần bạn del và pos là O(n) -> độ phức tạp sẽ là O(n^3) (!)
    - Và làm sao bạn cho máy tính hiểu đc là bạn muốn làm như thế?

  7. #21
    Long Hoàng's Avatar
    Long Hoàng đang trong diễn đàn Rìu Bạc
    Tham gia
    Mar 2013
    Đến từ
    No Where
    Bài
    437
    Cảm ơn
    111
    Điểm
    80/76 bài viết
    VR power
    0

    Default

    Trích programmer2010 View Post
    ^:
    - Mỗi lần bạn del và pos là O(n) -> độ phức tạp sẽ là O(n^3) (!)
    - Và làm sao bạn cho máy tính hiểu đc là bạn muốn làm như thế?
    Mình dùng vòng lặp, một vài biến phụ để lưu dãy s, lưu các kí tự cần tìm trong dãy

  8. #22
    programmer2010's Avatar
    programmer2010 vẫn chưa có mặt trong diễn đàn Rìu Chiến Chấm
    Tham gia
    Feb 2010
    Bài
    2.495
    Cảm ơn
    37
    Điểm
    617/555 bài viết
    VR power
    7

    Default

    Hãy đứng trên vai người khổng lồ, bạn sẽ thấy được nhiều thứ hơn là khi đứng dưới đất. (và mình cũng ko cao to đến thế)
    Trích Long Hoàng View Post
    Mình dùng vòng lặp, một vài biến phụ để lưu dãy s, lưu các kí tự cần tìm trong dãy
    Bạn có thể viết thành giả mã cũng đc (C càng tốt).
    p/s: bài này coi như giải xong.
    Thay đổi nội dung bởi programmer2010; 08-08-2013 lúc 14:05.

  9. #23
    Long Hoàng's Avatar
    Long Hoàng đang trong diễn đàn Rìu Bạc
    Tham gia
    Mar 2013
    Đến từ
    No Where
    Bài
    437
    Cảm ơn
    111
    Điểm
    80/76 bài viết
    VR power
    0

    Default

    code đây
    Programmer và mọi người xem giùm mình!

    Thay đổi nội dung bởi Long Hoàng; 08-08-2013 lúc 15:00.

  10. #24
    programmer2010's Avatar
    programmer2010 vẫn chưa có mặt trong diễn đàn Rìu Chiến Chấm
    Tham gia
    Feb 2010
    Bài
    2.495
    Cảm ơn
    37
    Điểm
    617/555 bài viết
    VR power
    7

    Default

    Cái gì vậy trời???
    Dùng Ideone đi bạn.

  11. #25
    Long Hoàng's Avatar
    Long Hoàng đang trong diễn đàn Rìu Bạc
    Tham gia
    Mar 2013
    Đến từ
    No Where
    Bài
    437
    Cảm ơn
    111
    Điểm
    80/76 bài viết
    VR power
    0

    Default

    Trích programmer2010 View Post
    Cái gì vậy trời???
    Dùng Ideone đi bạn.
    code đây

  12. #26
    programmer2010's Avatar
    programmer2010 vẫn chưa có mặt trong diễn đàn Rìu Chiến Chấm
    Tham gia
    Feb 2010
    Bài
    2.495
    Cảm ơn
    37
    Điểm
    617/555 bài viết
    VR power
    7

    Default

    Để ý là code bạn bị TLE
    Và 1 điều quan trọng: Với phân số 1/10007 thì độ chính xác của phép chia thực là ko đủ đâu.

    Bạn có thể làm theo cách của lamdetien để chia, và duyệt trâu thì O(n^2) time và O(n) space (!)
    Phải kết hợp thuật tìm chu kì mới O(n) time và O(1) space đc.
    Thay đổi nội dung bởi programmer2010; 08-08-2013 lúc 15:30.

  13. Có 1 thành viên cảm ơn programmer2010 cho bài viết này:
    Long Hoàng (08-08-2013)

  14. #27
    kaka2241982's Avatar
    kaka2241982 vẫn chưa có mặt trong diễn đàn Rìu Bạc
    Tham gia
    Mar 2011
    Bài
    255
    Cảm ơn
    68
    Điểm
    50/37 bài viết
    VR power
    0

    Default

    Thấy mấy bác dùng tt lằng nhằng quá, đọc chả hiểu nổi, thuật của e là :
    Phân tích thằng b ra snt, nếu chỉ có 2 và 5->phân số hữu tỉ
    Nếu có các số nguyên tố khác thì sẽ là phân số vô tỉ, khi đó 'quay 1 vòng' là oke
    Code:
    tg:=a;
    repeat
    a:=a*10;
    write(a div b);
    a:=a mod b;
    until tg=a;

  15. #28
    lamdetien36's Avatar
    lamdetien36 vẫn chưa có mặt trong diễn đàn Rìu Vàng
    Tham gia
    Jun 2013
    Bài
    688
    Cảm ơn
    52
    Điểm
    195/164 bài viết
    VR power
    0

    Default

    Trích kaka2241982 View Post
    Thấy mấy bác dùng tt lằng nhằng quá, đọc chả hiểu nổi, thuật của e là :
    Phân tích thằng b ra snt, nếu chỉ có 2 và 5->phân số hữu tỉ
    Nếu có các số nguyên tố khác thì sẽ là phân số vô tỉ, khi đó 'quay 1 vòng' là oke
    Code:
    tg:=a;
    repeat
    a:=a*10;
    write(a div b);
    a:=a mod b;
    until tg=a;
    Cần gì phân tích. Cứ chia lấy dư. Nếu dư = 0 thì đó là hữu tỉ rồi xuất ra thôi.
    Mà anh nói 'quay 1 vòng' là sao

  16. #29
    programmer2010's Avatar
    programmer2010 vẫn chưa có mặt trong diễn đàn Rìu Chiến Chấm
    Tham gia
    Feb 2010
    Bài
    2.495
    Cảm ơn
    37
    Điểm
    617/555 bài viết
    VR power
    7

    Default

    Trích kaka2241982 View Post
    Thấy mấy bác dùng tt lằng nhằng quá, đọc chả hiểu nổi, thuật của e là :
    Phân tích thằng b ra snt, nếu chỉ có 2 và 5->phân số hữu tỉ
    Nếu có các số nguyên tố khác thì sẽ là phân số vô tỉ, khi đó 'quay 1 vòng' là oke
    Làm như vậy nhiều lúc nó đúng, nhưng trong thực tế có 1 số input chưa chắc gì nó chịu quay vòng về tử.
    Như 7/12 = 1/4 + 1/3 = 0.58(3) chẳng hạn.

    Dùng thuật chu kì mạnh hơn nhiều, vì mình vừa chắc chắn có chu kì (với mẫu chia hết cho 1 SNT khác 2 và 5) vừa viết đc chu kì 1 cách dễ dàng.
    Thay đổi nội dung bởi programmer2010; 08-08-2013 lúc 16:12.

  17. #30
    kaka2241982's Avatar
    kaka2241982 vẫn chưa có mặt trong diễn đàn Rìu Bạc
    Tham gia
    Mar 2011
    Bài
    255
    Cảm ơn
    68
    Điểm
    50/37 bài viết
    VR power
    0

    Default

    Đây là bài của đệ (vào mà chém )

  18. Có 1 thành viên cảm ơn kaka2241982 cho bài viết này:
    Long Hoàng (08-08-2013)

 

 
Trang 2/3 đầuđầu 1 2 3 cuốicuối

Quyền sử dụng

  • Bạn không thể gửi chủ đề mới
  • Bạn không thể gửi trả lời
  • Bạn không thể gửi file đính kèm
  • Bạn không thể tự sửa bài viết của mình
  •