Loading Now

longestDifference

Số nhị phân là những số chỉ gồm 2 loại ký tự là 01. Với mỗi số ở hệ thập phân n đều có thể chuyển sang số ở hệ nhị phân tương ứng. 

Nhật và Hải đang tranh luận về số nhị phân, Nhật thích số 1, còn Hải thì số 0. Hai bạn cần một trọng tài để tính ra hiệu số giữa chuỗi số 1 dài nhất và chuỗi số 0 dài nhất. Trọng tài sẽ đưa ra 1 số nguyên n bất kì, và bạn hãy giúp trọng tài tính hiệu số đó!

Ví dụ: 

  • Với n = 4 thì longestDifference(n) = 1.
    Giải thích: Do 4 khi chuyển sang hệ nhị phân là 100. Chuỗi 1 dài nhất là 1, chuỗi 0 dài nhất là 2. Giá trị sẽ là |1 - 2| = 1.
  • Với n = 3 thì longestDifference(n) = 7.

Đầu vào/ Đầu ra

  • [Thời gian chạy] 0.1s với C++, 0.6s với Java và C#, 0.8s với Python, Go và JavaScript.
  • [Đầu vào] Integer n
    0 ≤ n ≤ 109.
  • [Đầu ra]   Integer.

    Hiệu số của chuỗi 1 dài nhất và 0 dài nhất.

Post Comment

Contact