文章

34

粉丝

0

获赞

219

访问

3.8k

头像
负二进制 题解:
P1097
发布于2026年3月5日 15:28
阅读数 281

#include <bits/stdc++.h>
using namespace std;

int main(){
	int n;
	
	while(scanf("%d",&n)!=EOF){
		int num[1005];
		int arc=0;
		if(n==0) {
			printf("0\n");
			continue; 
		}
		while(n!=0){
			num[arc]=n%(-2);
			n/=-2;
			if(num[arc]<0){
				num[arc]+=2;
				n+=1;
			}
			arc++;
		}
		for(int i=arc-1;i>=0;i--){
			printf("%d",num[i]); 
		}
		printf("\n");
	}
	return 0;
} 

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发