Протестил, выводит всё правильно, но не проходит валидацию(
package com.javarush.task.task37.task3714;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
Древний Рим
*/
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Input a roman number to be converted to decimal: ");
String romanString = bufferedReader.readLine();
System.out.println("Conversion result equals " + romanToInteger(romanString));
}
public static int romanToInteger(String s) {
int[] result = new int[s.toCharArray().length];
int max =0,j=0;
for(int i=0;i<s.toCharArray().length;i++){
result[i] = chaConv(s.toCharArray()[i]);
if(max<result[i]){
max=result[i];
j=i;
}
}
for(int i=0;i<result.length;i++){
if(i<j) max-=result[i];
else if(i>j) max+=result[i];
}
return max;
}
public static int chaConv(char s){
switch (s){
case 'I': return 1;
case 'V': return 5;
case 'X': return 10;
case 'L': return 50;
case 'C': return 100;
case 'D': return 500;
case 'M': return 1000;
default: throw new IllegalArgumentException();
}
}
}