文章
105
粉丝
69
获赞
117
访问
54.2k
负数取余的规则:
|小| % |大| = |小| 符号同前
|大| % |小| = |余| 符号同前
举例:
3%4 = 3 ; -3%4 = -3 ; -3%-4 = -3 ; 3%-4 = 3;
5%3 = 2 ; 5%-3 = 2 ;-5%-3 = -2 ; -5%3 = -2;
#include<bits/stdc++.h>
using namespace std;
int n;
int main()
{
while(cin >> n)
{
string res = "0";
if(!n)
{
cout << res << endl;
continue;
}
res.pop_back();
while(n)
{
int t = abs(n) % (-2);
res += (abs(t) + '0');
n = ceil(n / (-2.0));
//n = (n - t) / (-2);
}
reverse(res.begin(), res.end());
cout << res << endl;
}
return 0;
}
登录后发布评论
求问while里面的n-t什么意思