哪里错了?

P1303 A*B Problem

Serendi_Pity @ 2022-08-29 22:12:23

#include<iostream>
using namespace std;
int main(){
    long long a,b;
    cin>>a>>b;
    cout<<a*b;
}

by Serendi_Pity @ 2022-08-29 22:17:34

@LincW @bxnya_miana @czx2009 @liangbowen @bye_wjx @rui_er

怎么用更高精度


by Hisaishi_Kanade @ 2022-08-29 22:18:09

我的建议是学习题解


by wwwyyww @ 2022-08-29 22:18:38

高精度


by cqazy811 @ 2022-08-29 22:18:42

@sjz520 如果您是萌新的话,建议您先跳过这道题。


by Register_int @ 2022-08-29 22:19:26

@sjz520 用数组存下数字的每一位,然后按照竖式乘法的方式模拟运算。这里建议系统学习。


by mrmgxl123 @ 2022-08-29 22:19:29

在前头加这个:

string jia(string& a1,string& b1)
{
    int a[a1.size()+5]={0};
    int b[b1.size()+5]={0};
    for(int i=0;i<a1.size();i++)
    {
        a[i]=a1[a1.size()-1-i]-'0';
    }
    for(int i=0;i<b1.size();i++)
    {
        b[i]=b1[b1.size()-1-i]-'0';
    }
    int s=max(a1.size(),b1.size());
    int c[s+5]={0};
    for(int i=0;i<s;i++)
    {
        c[i]+=b[i]+a[i];
        c[i+1]+=c[i]/10;
        c[i]%=10;
    }
    if(c[s]!=0)
    {
        s++;
    }
    string x;
    x.resize(s);
    for(int i=0,j=s-1;j>=0;i++,j--)
    {
        x[i]=c[j]+'0';
    }
    return x;
}

再把a,b的类型改成string就行。 (这是加法高精,用两个字符串找规律相加的到)


by LincW @ 2022-08-29 22:20:01

@sjz520 改学Haskell


by Hisaishi_Kanade @ 2022-08-29 22:20:14

@mrmgxl123 乘法你发个加法


by Register_int @ 2022-08-29 22:22:16

@mrmgxl123 加法,你真厉害


by 654179_qwq @ 2022-08-29 22:23:23

保证 RE


from accept_luogu import *
accept_luogu.define(AC,accept_luogu.code_of_solution("P1303","1st"))
AC

上一页 | 下一页