hash
// 1023. Have Fun with Numbers.cpp: 主项目文件。 #include "stdafx.h" #include <cstdio> #include <cstring> int hash[10]; void doubleOperate(char *str,char *pStr){ } int main() { memset(hash,0,sizeof(hash)); char str[23],pStr[23]; gets(str); int length=strlen(str); for(int i=0;str[i];i++) hash[str[i]-'0']++; int in=0,cnt=0; for(int i=length-1;i>=0;i--){ int temp=(str[i]-'0')*2+in; pStr[cnt++]=temp%10+'0'; hash[temp%10]--; in=temp/10; } if(in!=0){ hash[in+'0']--; pStr[cnt++]=in+'0'; } bool tag=true; for(int i=0;i<10;i++){ if(hash[i]!=0){ tag=false; break; } } if(!tag) puts("No"); else puts("Yes"); for(int i=cnt-1;i>=0;i--) putchar(pStr[i]); printf("\n"); return 0; }