PTA 自测-4 Have Fun with Numbers

复制代码
#include<iostream>
#include<string>
#include<cstring>
#include<vector>
using namespace std;
int main()
{
    int a[10] = {0}, b[10] = { 0 };
    string str;
    vector<int>doublenum;//记录翻倍后的数值
    cin >> str;
    int length = str.length();
    int j = 0;
    for (int i = 0; i < length; i++)
    {
        int  num;
        num = str[i] - '0';
        a[num]++;
    }
    int carry = 0;
    for (int i = length-1; i>=0; i--)
    {
        int num = (str[i] - '0') * 2 + carry;
        if (num >=10)
            carry = 1;
        else
            carry = 0;
        int remainder = num % 10;
        b[remainder]++;
        doublenum.push_back(remainder);
    }
    if (carry == 1)
        doublenum.push_back(1);
    bool judge = true;
    for (int i = 0; i < 10; i++)
    {
        if (a[i] != b[i])
        {
            judge = false;
            break;
        }
    }
    if (judge)
    {
        cout << "Yes" << endl;
    }
    else
    {
        cout << "No" << endl;
    }
    for (int i = doublenum.size()-1; i>=0; i--)
    {
        cout << doublenum[i];
    }
    return 0;
}
复制代码

1、用字符串记录数字

2、vector

posted @   Tomorrow1126  阅读(224)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
点击右上角即可分享
微信分享提示