斯德哥尔摩火车上的题

问题遇到的现象和发生背景

为什么java和c++一样的代码pta上c++能过而java有一个内存超限而acwing都能过

操作环境、软件版本等信息

img

img

img

尝试过的解决方法
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner;

public class Main {
    static Scanner sc=new Scanner(System.in);
    static BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    public static void main(String[] args)throws Exception {
       // Scanner sc=new Scanner(System.in);
        String s1="";
        String s2="";
//        char a1[]=sc.next().toCharArray();
//        char a2[]=sc.next().toCharArray();
        String a1= br.readLine();
        String a2= br.readLine();


        for(int i=1;i<a1.length();i++){
            if((a1.charAt(i)-'0')%2==(a1.charAt(i-1)-'0')%2){
                if((a1.charAt(i)-'0')>(a1.charAt(i-1)-'0'))s1+=a1.charAt(i);
                else s1+=a1.charAt(i-1);
            }

        }
        for(int i=1;i<a2.length();i++){
            if((a2.charAt(i)-'0')%2==(a2.charAt(i-1)-'0')%2){
                if((a2.charAt(i)-'0')>(a2.charAt(i-1)-'0'))s2+=a2.charAt(i);
                else s2+=a2.charAt(i-1);


            }

        }
        if(s1.equals(s2)) System.out.println(s1);
        else{
            System.out.println(s1);
            System.out.println(s2);
        }




    }
}


#include<bits/stdc++.h>
using namespace std;
int main(){
string s1;
string s2;
string s3;
string s4;    
cin>>s3;
cin>>s4;    
for(int i=1;i<s3.length();i++){
            if((s3[i]-'0')%2==(s3[i-1]-'0')%2){
                if((s3[i]-'0')>(s3[i-1]-'0'))s1+=s3[i];
                else s1+=s3[i-1];
            }

        }
 for(int i=1;i<s4.length();i++){
             if((s4[i]-'0')%2==(s4[i-1]-'0')%2){
                 if((s4[i]-'0')>(s4[i-1]-'0'))s2+=s4[i];
                 else s2+=s4[i-1];
             }
 
         }  
         cout<<s1;
if(s1.compare(s2))cout<<endl<<s2;



    
    return 0;
}

我想要达到的结果

pta到底是哪里有问题
题目地址
https://pintia.cn/problem-sets/994805046380707840/exam/problems/1518581803354341376

提示信息很明确了,内存超了,稍微再精简精简,一般超的不多,可以勉强过去