Javaは文字列sを与え、残りの列が1つの回文列になるようにいくつかの文字を削除することができます.どのように削除して文字列を最も長くすることができますか?削除する文字数を出力します.

1388 ワード

import java.io.BufferedInputStream;
import java.util.Scanner;
 
public class Main {
 
    private static Scanner cin;
	public static int Check(String s) {
    	StringBuffer sb = new StringBuffer();
    	sb.append(s);
    	sb.reverse();
    	String s1 = sb.toString();
    	int n = s.length();
    	int [][] in = new int[n+1][n+1];
    	for (int i=1;i
  • 小Qは最近、文字列の大文字を文字列の後ろに置くと、各文字の相対的な位置が変わらず、余分な空間を申請できないという難題に直面した.Qさんを手伝ってもらえますか.
  • import java.util.Scanner;
    
    public class Main {
    
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            boolean check = false;
            while(sc.hasNext()){
                String s = sc.nextLine();
                char[] c =s.toCharArray();
                for(int i=s.length()-1;i>=0;i--){
                    check=false;
                    if(Character.isLowerCase(c[i])){
                        for(int j=i-1;j>=0;j--){
                            if(Character.isUpperCase(c[j])){
                                char temp = c[j];
                                for(int k=j;k