文章

28

粉丝

226

获赞

53

访问

146.0k

头像
找规律蒙对了感觉
Sacan SVIP
P1097
发布于2022年6月2日 23:01
阅读数 6.8k

1. 找几个正常转二进制的“除2取余,逆序输出”做做看,发现:

为了保证余数时0或1,就必须保证a和b同号。或者商0,余数为最后一次的被除数。

a是被除数;b是除数和商的乘积。

 

2. 

C++中:

13 % -2 = 1

-13 % -2 = -1

然后就。。

蒙对了。。。。。。。。。。。。。。。

 

#include <iostream>
#include <vector>
using namespace std;
int main()
{
    int M;
    while(cin >> M){
        if(M == 0){
            cout << 0 << endl;
            continue;
        }
        vector<int> mid;
        while(M != 0){
            int temp = abs(M) % (-2);
            mid.emplace_back(temp);
            M = (M - temp) / (-2);
        }
        for(auto it = mid.rbegin();it != mid.rend();it++){
            cout << *it;
        }
        cout << endl;
    }
    return 0;
}

登录查看完整内容


登录后发布评论

1 条评论
snake VIP
2024年3月12日 19:44

yes

赞(0)