Cod sursa(job #2385222)

Utilizator Asgari_Armin123garvasucmatei Asgari_Armin123 Data 21 martie 2019 18:46:13
Problema Next Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 3.61 kb
#include <fstream>
#include <cstring>
#include <algorithm>
using namespace std;
const int NMAX=105;
ifstream in("1.in");
ofstream out("1.out");
void print(int a[]) {
    int i;
    for(i=a[0]; i>=1; i--) {
        out<<a[i];
    }
    out<<"\n";
}
void adun(int a[],int b[],int c[NMAX]) {
    int i,tr=0,aux;
    c[0]=max(a[0],b[0]);
    for(i=1; i<=c[0]; i++) {
        aux=a[i]+b[i]+tr;
        c[i]=aux%10;
        tr=aux/10;
    }
    if(tr==1)
        c[++c[0]]=tr;
}
void inm(int a[],int k,int c[NMAX]) {
    int i,aux,tr=0;
    c[0]=a[0];
    for(i=1; i<=c[0]; i++) {
        c[i]=a[i]*k;
    }
    for(i=1; i<=c[0]; i++) {
        aux=c[i]+tr;
        c[i]=aux%10;
        tr=aux/10;
    }
    while(tr) {
        c[++c[0]]=tr%10;
        tr=tr/10;
    }
}
void prod_hh(int a[],int b[],int c[NMAX]) {
    int i,tr=0,aux,j;
    c[0]=a[0]+b[0]-1;
    for(i=1; i<=a[0]; i++) {
        for(j=1; j<=b[0]; j++) {
            c[i+j-1]=c[i+j-1]+a[i]*b[j];
        }
    }
    for(i=1; i<=c[0]; i++) {
        aux=c[i]+tr;
        c[i]=aux%10;
        tr=aux/10;
    }
    while(tr) {
        c[++c[0]]=tr%10;
        tr=tr/10;
    }
}
int cmp(int a[],int b[]) {
    int i;
    if(a[0]>b[0])
        return 1;
    else if(a[0]<b[0])

        return -1;
    for(i=a[0]; i>=1; i--) {
        if(a[i]<b[i])
            return -1;
        else if(a[i]>b[i])
            return 1;
    }
    return 0;
}
void scad(int a[],int b[],int c[NMAX]) {
    int i,aux,impr=0;
    c[0]=a[0];
    for(i=1; i<=c[0]; i++) {
        aux=a[i]-b[i]-impr;
        if(aux<0) {
            aux=aux+10;
            impr=1;
        } else
            impr=0;
        c[i]=aux%10;
    }
    while(c[0]>1 && c[c[0]]==0)
        c[0]--;
}
int main() {
    int a[NMAX],b[NMAX],c[NMAX],k=132;
    char ch;
    memset(a,0,sizeof(a));
    memset(b,0,sizeof(b));
    memset(c,0,sizeof(c));
    ch=in.get();
    while(ch!='\n') {
        if(ch>='0' && ch<='9')
            a[++a[0]]=ch-'0';
        ch=in.get();
    }
    reverse(a+1,a+a[0]+1);
    ch=in.get();
    while(!in.eof()) {sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
        if(ch>='0' && ch<='9')
            b[++b[0]]=ch-'0';
        ch=in.get();
    }
    reverse(b+1,b+b[0]+1);
    prod_hh(a,b,c);
    print(c);
    return 0;
}