1023. Have Fun with Numbers (20)

#include <iostream>
#include <string.h>

using namespace std;

int charcount[2][10];
char s[2][30];

void setstringcount(int index)
{
	int len = strlen(s[index]), i, cur;
	for(i = 0; i <= len - 1; i++)
	{
		cur = s[index][i] - '0';
		charcount[index][cur]++;
	}
}

int main()
{
	gets(s[0]);
	setstringcount(0);

	int jinwei = 0, j, len = strlen(s[0]), i, cur;
	for(i = len - 1, j = 0; i >= 0; i--, j++)
	{
		cur = (s[0][i] - '0') * 2 + jinwei;
		s[1][j] = cur % 10 + '0';
		jinwei = cur / 10;
	}

	if(jinwei > 0)
	{
		s[1][j++] = jinwei + '0';
	}
	s[1][j] = '\0';

	setstringcount(1);

	int flag = 1;
	for(i = 0; i <= 9; i++)
	{
		if(charcount[0][i] != charcount[1][i])
		{
			flag = 0;
			break;
		}
	}

	if(flag == 1)
	{
		printf("Yes\n");
	}
	else
	{
		printf("No\n");
	}

	for(i = j - 1; i >= 0; i--)
	{
		printf("%c", s[1][i]);
	}

	printf("\n");

	system("pause");
	return 0;
}

 

posted on 2025-11-23 16:58  王景迁  阅读(2)  评论(0)    收藏  举报

导航