2 solutions

  • 3
    @ 2025-1-18 11:52:55
    #include<bits/stdc++.h>
    using namespace std;
    const int N=2010;
    char a[N],b[N];
    int c[N];
    int main()
    {
    	int B;
    	cin>>B;
    	cin>>a>>b;
    	int m=strlen(a),n=strlen(b);
    	reverse(a,a+m);
    	reverse(b,b+n);
    	int lenc=max(n,m)+1;
    	for(int i=0,t=0;i<=lenc;i++)
    	{
    		int ta=0;
    		if(a[i]>='0'&&a[i]<='9') ta=a[i]-'0';
    		else if(a[i]>='A'&&a[i]<='Z') ta=a[i]-'A'+10;
    		
    		int tb=0;
    		if(b[i]>='0'&&b[i]<='9') tb=b[i]-'0';
    		else if(b[i]>='A'&&b[i]<='Z') tb=b[i]-'A'+10;
    		
    		int k=t+ta+tb;
    		c[i]=k%B;
    		t=k/B; 
    		//cout<<c[i]<<endl;
    	}
    	//cout<<lenc<<endl;
    	while(lenc&&c[lenc]==0) lenc--;
    	//cout<<lenc;
    	for(int i=lenc;i>=0;i--)
    	{
    		if(c[i]>=10) cout<<char(c[i]-10+'A');
    		else cout<<c[i];
    	}
    	return 0;
    }
    
    
    • -1
      @ 2025-1-18 11:56:46
      • 1

      Information

      ID
      1196
      Time
      1000ms
      Memory
      256MiB
      Difficulty
      10
      Tags
      (None)
      # Submissions
      3
      Accepted
      2
      Uploaded By