3、6種類のアルファベット "u,d,c,s,t,b" から成るn文字の文字列のうち、"uud"という並びが含まれる文字列を全て列挙するプログラムを作成してください
この問題が分かりません。
1、6種類のアルファベット "u,d,c,s,t,b" から成る3文字の文字列を全て列挙するプログラムを作成してください。ただし、文字列内に同じアルファベットが出現しても構わないものとし、出力順序は問わないものとします。
2、6種類のアルファベット "u,d,c,s,t,b" から成るn文字の文字列を全て列挙するプログラムを作成してください。ただし、nは1以上の整数とし、標準入力より指定されます。その他の条件は(1)と同じであるものとします。
1,2は以下のように考えましたが、よくわかりません。
java歴1ヶ月なので、簡単なコードで返答が欲しいです。
1、
import java.util.Random;
public class Main {
public static void main(String[] args) throws Exception {
// 文字をつめる
String moji[] = {"u", "d", "c", "s", "t", "b"};
// 乱数
Random rnd = new Random();
int rndMoji = rnd.nextInt();
// 配列からList List<String> list=Arrays.asList(moji); // リストの並びをシャッフル Collections.shuffle(list); // listから配列へ戻します String[] moji2 =(String[])list.toArray(new String[list.size()]); int i; // 出力 for(i = 1; i < 3; i++) { for (int a = 0; a < rnd; a++) { System.out.print(moji2[a]+" "); } } }
}
2、
import java.util.Random;
public class Main {
public static void main(String[] args) throws Exception {
// 文字をつめる
String moji[] = {"u", "d", "c", "s", "t", "b"};
// 乱数
Random rnd = new Random();
int rndMoji = rnd.nextInt();
int n =rnd.nextInt();
// 配列からList List<String> list=Arrays.asList(moji); // リストの並びをシャッフル Collections.shuffle(list); // listから配列へ戻します String[] moji2 =(String[])list.toArray(new String[list.size()]); int i; // 出力 for(i = 0; i < n; i++) { System.out.print(moji2[i]+" "); } }
}
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。