diff options
Diffstat (limited to 'other/concatenation_binary_num.cpp')
-rw-r--r-- | other/concatenation_binary_num.cpp | 38 |
1 files changed, 0 insertions, 38 deletions
diff --git a/other/concatenation_binary_num.cpp b/other/concatenation_binary_num.cpp deleted file mode 100644 index b212c09..0000000 --- a/other/concatenation_binary_num.cpp +++ /dev/null @@ -1,38 +0,0 @@ -#include "leetcode.h" - -class Solution { -public: - int concatenatedBinary(int n) { - string s = decimalToBinary(n); - return binaryToDecimal(s); - } - -private: - int mod = 1000000007; - string decimalToBinary(int n) { - string str = ""; - for (int i = n; i >= 1; --i) { - int j = i; - while (j) { - str += (j % 2) + '0'; - j /= 2; - } - } - return str; - } - int binaryToDecimal(string n) { - long long ans = 0, p = 1; - for (int i = 0; i < n.size(); ++i) { - long long curr = (n[i] - '0') * p; - p *= 2; - p %= mod; - ans += curr; - } - return ans % mod; - } -}; - -int main() { - Solution obj; - cout << obj.concatenatedBinary(3); -} |