2016-07-25 2 views
0

ケース撮る入力(テストケース)私は以下のコードによって、アレイ内の1行に入力を取ることができるが、私は、それはテストの</p> <p>3 //何をBE-たくない

640 480 //新しい行

120 300 //新しい行

180 180 //新しい行

"3" は、テストケースのないで、6つの数字を行う必要がありません1つに保存する配列、どうすればいいですか?あなたはこのように試すことができ

BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 

    System.out.println("Enter Min Length:-"); 
    String lt = br.readLine();       //Ignore this 
    int length= Integer.parseInt(lt); 

    System.out.println("Enter Test Cases:-"); 
    String temp = br.readLine();      //test-case input 
    int testcases = Integer.parseInt(temp); 

    System.out.println("Enter the W and H"); 
    String array = br.readLine();      //this takes only input in single line 
    String No[] = array.trim().split("\\s+"); 
    int intarray[]= new int[testcases]; 

    for(int i =0;i<intarray.length;i++) 
     { 
     intarray[i]=Integer.parseInt(No[i]); 
     } 
    System.out.println(Arrays.toString(intarray)); 
+0

あなたはテストケースの合計なしを知って、テストケースの無に等しいまでのreadLineをチェックして、残りを無視します。 – lsiva

+0

私はオンラインコンテストのためにそれを解決しています、私はテストケースの数を知らない、例のために私はちょうどそれが例のセクションで持っていた方法を保ちました –

答えて

0

int testcases = Integer.parseInt(temp); 
int i=0; 
List<Integer> list = new ArrayList<Integer>(); 
while(i<=testcases) 
{ 
    System.out.println("Enter the W and H"); 
    String array = br.readLine(); //this takes only input in single line 
    String No[] = array.trim().split("\\s+"); 
    //int intarray[]= new int[testcases]; 

    for(int i =0;i<No.length;i++) 
    { 
    //intarray[i]=Integer.parseInt(No[i]); 
    list.add(Integer.parseInt(No[i])); 
    } 
    Integer[] intArray = list.toArray(new Integer[0]); 
    System.out.println(Arrays.toString(intarray)); 
    i++; 
} 
+0

それは単一の配列に格納されません.. –

+0

上記のコードを更新しました。試してみてください。 – lsiva

+0

changes-int j = 0; j ++; for(String No1:No){list.add(Integer.parseInt(No1));}オンラインコンペとすべての –

関連する問題

 関連する問題