Have Fun with Numbers

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

struct bign {
	int d[100];
	int len;
	bign() {
		memset(d,0,sizeof(d));
		len=0;
	}
};

bign change(string str) {
	bign a;
	a.len=str.size();
	for(int i=0; i<a.len; i++) {
		a.d[i]=str[a.len-1-i]-'0';
	}
	return a;
}

bign mul(bign a,int b) {
	bign c;
	int carry=0;
	for(int i=0; i<a.len; i++) {
		int temp=a.d[i]*b+carry;
		c.d[c.len++]=temp%10;
		carry=temp/10;
	}
	while(carry!=0) {
		c.d[c.len++]=carry%10;
		carry/=10;
	}
	return c;
}

bool compare(bign a,bign b) {
	if(a.len!=b.len) {
		return 0;
	}
	int count[10]= {0};
	for(int i=0; i<a.len; i++) {
		count[a.d[i]]++;
		count[b.d[i]]--;
	}
	for(int i=0; i<a.len; i++) {
		if(count[a.d[i]]) {
			return 0;
		}
	}
	return 1;
}

void Printf(bign a) {
	for(int i=a.len-1; i>=0; i--) {
		cout<<a.d[i];
	}
}

int main() {
	string str;
	cin>>str;
	bign a=change(str);
	bign b=mul(a,2);
	if(compare(a,b)) {
		cout<<"Yes"<<endl;
	} else {
		cout<<"No"<<endl;
	}
	Printf(b);
	return 0;
}

全部评论

相关推荐

11-18 15:57
门头沟学院 Java
起一个响亮的妹子吧:虽然但是,确有其人,重邮同届的,没有技巧,纯纯的个人实力。查看图片
点赞 评论 收藏
分享
伟大的烤冷面被普调:暨大✌🏻就是强
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务