javaで文字列を揃えて 揃えるために何回移動を繰り返せば良いかを調べるプログラムを作成中です。
実行例
入力
5 //文字数
asdfg //揃えた後の文字列
fgasd //揃える前
二回ずらす (一回目fを最後に持っていく gasdf 2回目gを最後に持っていく asdfg)
二回ずらしたので出力は2というふうにしたいです。
import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in); int n=sc.nextInt(); String t=sc.next(); String s=sc.nextLine(); String []m=new String[n]; String []m1=new String[n]; for (int i=0;i<n;i++) { m[i]=t.substring(i,i); } for (int i=0;i<n;i++) { m1[i]=s.substring(i,i); } if (t.equals(s)) { System.out.println("0"); } while (!(t.equals(s))) { String []k=new String[100]; int i=0; k[0]=m1[n-1]; m1[n-1]=m1[i]; for (int j=0;j<n-2;j++) { m1[j]=m1[j+1]; } m1[n-2]=k[0]; } }
}
自分で考えたコードで試しましたが入力が無限に続いてしまい処理できません。
どなたかわかる方教えていただけないでしょうか。
あなたの回答
tips
プレビュー