ACM模式下輸入輸出
經(jīng)典十一道題
題一 多行數(shù)據(jù),有行數(shù)限制,每行有個(gè)數(shù)限制
輸入描述:
輸入的第一行包括一個(gè)正整數(shù)t(1 <= t <= 100), 表示數(shù)據(jù)組數(shù)。
接下來(lái) t 行, 每行一組數(shù)據(jù)。
每行的第一個(gè)整數(shù)為整數(shù)的個(gè)數(shù)n(1 <= n <= 100)。
接下來(lái)n個(gè)正整數(shù), 即需要求和的每個(gè)正整數(shù)。
輸出描述:
每組數(shù)據(jù)輸出求和的結(jié)果
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
//將求和結(jié)果先放在數(shù)組中
List<Integer> list = new ArrayList<Integer>();
int t = in.nextInt();
for(int i = 0; i < t; i++){
int n = in.nextInt();
int[] nums = new int[n];
int sum = 0;
for(int j = 0; j < n; j++){
nums[j] = in.nextInt();
sum += nums[j];
}
list.add(sum);
}
//逐項(xiàng)按列輸出數(shù)組元素
list.forEach(e->System.out.println(e));
}
}
輸出結(jié)果:
題二 多行數(shù)據(jù),每行數(shù)據(jù)個(gè)數(shù)限制
輸入描述:
輸入數(shù)據(jù)有多組, 每行表示一組輸入數(shù)據(jù)。
每行的第一個(gè)整數(shù)為整數(shù)的個(gè)數(shù)n(1 <= n <= 100)。
接下來(lái)n個(gè)正整數(shù), 即需要求和的每個(gè)正整數(shù)。
輸出描述:
每組數(shù)據(jù)輸出求和的結(jié)果
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
while(in.hasNext()){
int n = in.nextInt();
int res = 0 ;
while(n > 0){
res += in.nextInt();
n--;
}
System.out.println(res);
}
}
}
輸出結(jié)果:
題三 多組兩數(shù)相加
輸入描述:
輸入包括兩個(gè)正整數(shù)a,b(1 <= a, b <= 1000),輸入數(shù)據(jù)包括多組。
輸出描述:
輸出a+b的結(jié)果
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
while(in.hasNext()){
int a = in.nextInt();
int b = in.nextInt();
System.out.println(a+b);
}
}
}
輸出結(jié)果:
題四 多組數(shù)據(jù),有個(gè)數(shù)限制 每行僅兩個(gè)正整數(shù)
輸入描述:
輸入第一行包括一個(gè)數(shù)據(jù)組數(shù) t (1 <= t <= 100)
接下來(lái)每行包括兩個(gè)正整數(shù)a,b(1 <= a, b <= 1000)
輸出描述:
輸出a+b的結(jié)果
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int t = in.nextInt();
while(t-- > 0){
int a = in.nextInt();
int b = in.nextInt();
System.out.println(a+b);
}
}
}
輸出結(jié)果:
題五 多組兩位正整數(shù)相加,有結(jié)束條件
輸入描述:
輸入包括兩個(gè)正整數(shù)a,b(1 <= a, b <= 10^9),輸入數(shù)據(jù)有多組, 如果輸入為0 0則結(jié)束輸入
輸出描述:
輸出a+b的結(jié)果
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
List<Integer> list = new ArrayList<Integer>();
// 注意 hasNextInt 和 hasNextLine 的區(qū)別
while (in.hasNext()) {
int a = in.nextInt();
int b = in.nextInt();
if (a == 0 && b == 0) break;
list.add(a + b);
}
list.forEach(e->System.out.println(e));
}
}
//1、hasNextInt()方法會(huì)判斷接下來(lái)是否有非空字符.如果有,則返回true,否則返回false
//2、hasNextLine() 方法會(huì)根據(jù)行匹配模式去判斷接下來(lái)是否有一行(包括空行),如果有,則返回true,否則返回false
// hasNextInt() ---匹配使用--- nextInt()
//hasNextLine() ---匹配使用--- nextLine()
輸出結(jié)果:
題六 多組行數(shù)據(jù),每行數(shù)據(jù)個(gè)數(shù)有限制
輸入描述:
輸入數(shù)據(jù)有多組, 每行表示一組輸入數(shù)據(jù)。
每行的第一個(gè)整數(shù)為整數(shù)的個(gè)數(shù)n(1 <= n <= 100)。
接下來(lái)n個(gè)正整數(shù), 即需要求和的每個(gè)正整數(shù)。
輸出描述:
每組數(shù)據(jù)輸出求和的結(jié)果
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while(in.hasNextInt()){
int n = in.nextInt();
int res = 0;
while(n-- > 0){
res += in.nextInt();
}
System.out.println(res);
}
}
}
輸出結(jié)果:
題七 多組行數(shù)據(jù),以零為結(jié)束條件,結(jié)果存在數(shù)組中輸出
輸入描述:
輸入數(shù)據(jù)包括多組。
每組數(shù)據(jù)一行,每行的第一個(gè)整數(shù)為整數(shù)的個(gè)數(shù)n(1 <= n <= 100), n為0的時(shí)候結(jié)束輸入。
接下來(lái)n個(gè)正整數(shù),即需要求和的每個(gè)正整數(shù)。
輸出描述:
每組數(shù)據(jù)輸出求和的結(jié)果
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
List<Integer> list = new ArrayList<Integer>();
while(in.hasNext()) {
int n = in.nextInt();
if (n == 0) break;
int sum = 0;
while(n-- > 0){
sum += in.nextInt();
}
list.add(sum);
}
list.forEach(e->System.out.println(e));
}
}
輸出結(jié)果:
題八 多組行數(shù)據(jù),無(wú)個(gè)數(shù)限制
輸入描述:
輸入數(shù)據(jù)有多組, 每行表示一組輸入數(shù)據(jù)。
每行不定有n個(gè)整數(shù),空格隔開(kāi)。(1 <= n <= 100)。
輸出描述:
每組數(shù)據(jù)輸出求和的結(jié)果
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
while(in.hasNext()){
String[] str = in.nextLine().split(" ");
int res = 0;
for(int i=0; i<str.length; i++){
res += Integer.parseInt(str[i]);
}
System.out.println(res);
}
}
}
輸出結(jié)果:
題九 字符串排序,字符串之間用空格隔開(kāi)
輸入描述:
輸入有兩行,第一行n 第二行是n個(gè)字符串,字符串之間用空格隔開(kāi)
輸出描述:
輸出一行排序后的字符串,空格隔開(kāi),無(wú)結(jié)尾空格
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner in = new Scanner(System.in);
while(in.hasNext()){
int n = in.nextInt();
String[] str = new String[n];
for (int i = 0; i < n; i++) {
str[i] = in.next();
}
Arrays.sort(str);
for (String s:str) {
System.out.print(s + " ");
}
}
}
}
輸出結(jié)果:
題十 多個(gè)字符串測(cè)試用例,每行以空格隔開(kāi)
輸入描述:
多個(gè)測(cè)試用例,每個(gè)測(cè)試用例一行。 每行通過(guò)空格隔開(kāi),有n個(gè)字符,n<100
輸出描述:
對(duì)于每組測(cè)試用例,輸出一行排序過(guò)的字符串,每個(gè)字符串通過(guò)空格隔開(kāi)
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
while(in.hasNext()){
String[] str = in.nextLine().split(" ");
Arrays.sort(str);
for (String s:str) {
System.out.print(s + " ");
}
System.out.println();
}
}
}
輸出結(jié)果:
題十一 多個(gè)字符串測(cè)試用例,每行以逗號(hào)隔開(kāi)
輸入描述:
多個(gè)測(cè)試用例,每個(gè)測(cè)試用例一行。 每行通過(guò),隔開(kāi),有n個(gè)字符,n<100
輸出描述:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-650033.html
對(duì)于每組用例輸出一行排序后的字符串,用','隔開(kāi),無(wú)結(jié)尾空格
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
while(in.hasNext()){
String[] str = in.nextLine().split(",");
Arrays.sort(str);
int len = str.length;
for (int i = 0; i<len-1; i++) {
System.out.print(str[i]+ "," );
}
System.out.println(str[len-1]);
}
}
}
輸出結(jié)果:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-650033.html
到了這里,關(guān)于[JAVA] ACM模式下輸入輸出的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!