1023. Have Fun with Numbers (20)
来源:互联网 发布:淘宝买家秀大尺度下载 编辑:程序博客网 时间:2024/06/02 06:14
问给你的数的两倍的那个数是否由原来的数的各位重新排列组成。
大概是道大数题吧。。
反正挺简单的。。
#include <cstdio>#include <vector>#include <string>#include <cstring>#include <cstdlib>#include <iostream>#include <algorithm>#define INF 0x3fffffffusing namespace std;int main(){ int m[10],n[10]; memset(m,0,sizeof(m)); memset(n,0,sizeof(n)); string a,b; int len; cin>>a; len=a.size(); if (a[0]-'5'>=0) { for (int i=0;i<=len;i++) b[i]='0'; for (int i=len-1;i>=0;i--) { b[i+1]=b[i+1]+(a[i]-'0')*2; while(b[i+1]-'0'>=10) { b[i+1]=b[i+1]-10; b[i]++; } } cout<<"No"<<endl; for (int i=0;i<=len;i++) cout<<b[i]; } else { for (int i=0;i<len;i++) m[a[i]-'0']++; for (int i=0;i<len;i++) b[i]='0'; for (int i=len-1;i>=0;i--) { b[i]=b[i]+(a[i]-'0')*2; while(b[i]-'0'>=10) { b[i]=b[i]-10; b[i-1]++; } } for (int i=0;i<len;i++) n[b[i]-'0']++; int i; for (i=0;i<=9;i++) if (m[i]!=n[i]) { cout<<"No"<<endl; for (int i=0;i<len;i++) cout<<b[i]; break; } if (i==10) { cout<<"Yes"<<endl; for (int i=0;i<len;i++) cout<<b[i]; } }}
阅读全文
0 0
- 1023. Have Fun with Numbers (20)
- 【PAT】1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- PAT: 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- PAT 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- PAT 1023. Have Fun with Numbers (20)
- PAT 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- 1023. Have Fun with Numbers (20)
- js作用域
- Okhttp3 简单单例封装
- 还是不想就此而终
- JAVA SE基础知识(一)
- spring事务
- 1023. Have Fun with Numbers (20)
- 我男朋友是个程序员# 3 之《备份引发的血案》
- 10月24日 c语言 将数组a中的n个整数按相反顺序存放
- C++ XXTEA加密解密算法
- C++派生、友元类
- fb_var_screeninfo解析
- rr
- BZOJ 2142 礼物 扩展lucas定理
- Android项目通知开启引导设置