publicclassMain{ publicstaticvoidmain(String[] args){ Scanner sc = new Scanner(System.in); while(sc.hasNext()){ // next() or nextInt() is ok int a = sc.nextInt(); int b = sc.nextInt(); // your business System.out.println(a+b); } } }
题目B
输入描述:
1 2 3
输入数据有多组, 每行表示一组输入数据。 每行的第一个整数为整数的个数n(1 <= n <= 100)。 接下来n个正整数, 即需要求和的每个正整数。
输出描述:
1
每组数据输出求和的结果
示例1
输入
1 2
4 1 2 3 4 5 1 2 3 4 5
输出
1 2
10 15
1 2 3 4 5 6 7 8
import java.util.*;
publicclassMain{ publicstaticvoidmain(String[] args){ Scanner sc = new Scanner(System.in);
publicclassMain{ publicstaticvoidmain(String[] args){ Scanner sc = new Scanner(System.in); while(sc.hasNext()){ int n = sc.nextInt(); int[] arr = newint[n]; for(int i=0; i<n; i++){ arr[i] = sc.nextInt(); } // your business int sum = 0; for(int num : arr){ sum += num; } System.out.println(sum); } } }
题目 C
输入描述:
1 2 3
多个测试用例,每个测试用例一行。
每行通过空格隔开,有n个字符,n<100
输出描述:
1
对于每组测试用例,输出一行排序过的字符串,每个字符串通过空格隔开
示例1
输入
1 2 3
a c bb f dddd nowcoder
输出
1 2 3
a bb c dddd f nowcoder
THINKING:多组输入,只不过每个元素都是字符串。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
import java.util.*;
publicclassMain{ publicstaticvoidmain(String[] args){ Scanner sc = new Scanner(System.in); while(sc.hasNext()){ String[] str = sc.nextLine().split(" "); // your business Arrays.sort(str); StringBuilder sb = new StringBuilder(str[0]); for(int i=1; i<str.length; i++){ sb.append(" ").append(str[i]); } System.out.println(sb.toString()); } } }
结束提示
虽然是不限定输入组数,但是给了结束标志,这时在while中添加一个判断条件,符合的话跳出循环。
题目 A
输入描述:
1
输入包括两个正整数a,b(1 <= a, b <= 10^9),输入数据有多组, 如果输入为0 0则结束输入
输出描述:
1
输出a+b的结果
示例1
输入
1 2 3
1 5 10 20 0 0
输出
1 2
6 30
1 2 3 4 5 6 7 8 9 10 11 12 13 14
import java.util.*;
publicclassMain{ publicstaticvoidmain(String[] args){ Scanner sc = new Scanner(System.in); while(sc.hasNext()){ int a = sc.nextInt(); int b = sc.nextInt(); if(a == 0 && b == 0) return; // your business System.out.println(a+b); } } }
题目B
比上面的稍微复杂一点,不过也是根据输入标志退出输入,需要额外处理的就是第一个数字和后面数字的关系
输入描述:
1 2 3
输入数据包括多组。 每组数据一行,每行的第一个整数为整数的个数n(1 <= n <= 100), n为0的时候结束输入。 接下来n个正整数,即需要求和的每个正整数。
publicclassMain{ publicstaticvoidmain(String[] args){ Scanner sc = new Scanner(System.in); while(sc.hasNext()){ String[] str = sc.nextLine().split(" "); // your business int sum = 0; for(String s : str){ sum += Integer.parseInt(s); } System.out.println(sum); } } }
有限个数
题目A
输入描述:
1 2
输入第一行包括一个数据组数t(1 <= t <= 100) 接下来每行包括两个正整数a,b(1 <= a, b <= 10^9)
publicclassMain{ publicstaticvoidmain(String[] args){ Scanner sc = new Scanner(System.in); int t = sc.nextInt(); for(int i=0; i<t; i++){ int a = sc.nextInt(); int b = sc.nextInt(); // your business System.out.println(a+b); } } }
题目B
输入描述:
1 2 3 4
输入的第一行包括一个正整数t(1 <= t <= 100), 表示数据组数。 接下来t行, 每行一组数据。 每行的第一个整数为整数的个数n(1 <= n <= 100)。 接下来n个正整数, 即需要求和的每个正整数。
publicclassMain{ publicstaticvoidmain(String[] args){ Scanner sc = new Scanner(System.in); int t = sc.nextInt(); for(int i=0; i<t; i++){ int n= sc.nextInt(); int[] arr = newint[n]; for(int j=0; j<n; j++){ arr[j] = sc.nextInt(); } // your business int sum = 0; for(int num : arr){ sum += num; } System.out.println(sum); } } }