[编程题] 牛客输入输出练习Demo-计算a+b(多组输入)

[编程题] 牛客输入输出练习1-计算a+b(多组输入)]

1、牛客输入输出练习1-计算a+b(多组输入)

题目描述

计算多组输入的a+b

示例

输入输出描述:

输入描述:

输入包括两个正整数a,b(1 <= a, b <= 10^9),输入数据包括多组。

输出描述:

输出a+b的结果

例如2:

输入:

1 5
10 20

输出:

6
30

Java代码

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        ArrayList<Integer> lis = new ArrayList<Integer>();
        while(scanner.hasNextLine()){
            String[] lines = scanner.nextLine().split(" ");
            int a = Integer.parseInt(lines[0]);
             int b = Integer.parseInt(lines[1]);
            lis.add(a+b);
        }
        //输出
        for(Integer i : lis){
            System.out.println(i);
        }
    }
    
    
}

输出

已AC

2、牛客输入输出练习1-计算a+b(多组输入)

题目描述

image-20200713122104714

Java代码(方法1)

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        int t = scanner.nextInt();
        while(--t>=0){
            int a = scanner.nextInt();
            int b = scanner.nextInt();
            System.out.println(a+b);
        }
    }
}
    

Java代码(方法2)

import java.util.*;
import java.io.*;
public class Main{
    public static void main(String[] args) throws Exception{
        //Scanner scanner = new Scanner(System.in);
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        int t =Integer.parseInt(bf.readLine().trim());
        String line = null;
        while(--t>=0){
            line = bf.readLine();
            int a = Integer.parseInt(line.trim().split(" ")[0]);
            int b = Integer.parseInt(line.trim().split(" ")[1]);
            System.out.println(a+b);
        }
    }
}

3、客输入输出练习-计算a+b(多组输入)

题目描述

image-20200713123811239

Java代码-方法1

import java.util.*;
import java.io.*;
public class Main{
    public static void main(String[] args) throws Exception{
        Scanner scanner = new Scanner(System.in);
        while(scanner.hasNextLine()){
            String[] line = scanner.nextLine().trim().split(" ");
            int a = Integer.parseInt(line[0]);
            int b = Integer.parseInt(line[1]);
            if(a==0 && b==0){
                break;
            }else{
                System.out.println(a+b);
            }
            
        }
    }
} 

Java方法2

import java.util.*;
import java.io.*;
public class Main{
    public static void main(String[] args) throws Exception{
        Scanner scanner = new Scanner(System.in);
        
        while(scanner.hasNextInt()){
            int a = scanner.nextInt();
            int b = scanner.nextInt();
            if(a==0 && b==0){
                break;
            }else{
                System.out.println(a+b);
            }
            
        }
    }
}

Java方法3

import java.util.*;
public class Main{
    public static void main(String[] args) throws Exception{
        Scanner scanner = new Scanner(System.in);
        
        while(scanner.hasNextLine()){
            String[] line = scanner.nextLine().trim().split(" ");
            int a = Integer.parseInt(line[0]);
            int b = Integer.parseInt(line[1]);
            if(a==0 && b==0){
                break;
            }else{
                System.out.println(a+b);
            }
            
        }
    }
}
    
    

4、输入输出练习4

题目描述

image-20200713133920288

java方法1:按行读取的方式

(list使用Stream求和;截取部分数组)

import java.util.*;

public class Main{
    public static void main(String[] args) throws Exception{
        Scanner scanner = new Scanner(System.in);
        
        //按行输入的方法
        while(scanner.hasNextLine()){
            String[] line = scanner.nextLine().trim().split(" ");
            
            int first = Integer.parseInt(line[0]);
            if(first==0){
                break;
            }
            
            ArrayList<Integer> lis = new ArrayList<Integer>();
            for(String s : line){
                lis.add(Integer.parseInt(s));
            }
            
            //去除首
            lis.remove(0);
            //对list求和
            int sum = lis.stream().reduce(Integer::sum).orElse(0);
            System.out.println(sum);   
        }
    }
}

Java方法:按单独的字符读取

(借用Stream转int[] to List; 借用Stream对List求和)

知识点

//数组转List
List<Integer> l = Arrays.stream(arr).boxed().collect(Collectors.toList());
//list求和
int sum = l.stream().reduce(Integer::sum).orElse(0);

Java代码

import java.util.*;
import java.util.stream.Collectors;

public class Main{
    public static void main(String[] args) throws Exception{
        Scanner scanner = new Scanner(System.in);
        
        //按行输入的方法
        while(scanner.hasNextInt()){
            int first = scanner.nextInt();
            if(first==0){
                break;
            }else{
                int[] arr = new int[first];
                for(int i=0;i<first;i++){
                    arr[i] = scanner.nextInt();
                }
                //数组转List
                List<Integer> l = Arrays.stream(arr).boxed().collect(Collectors.toList());
                //list求和
                int sum = l.stream().reduce(Integer::sum).orElse(0);
                System.out.println(sum);
            }
        }
    }
           
}
    

Java方法3:-计数

import java.util.*;
import java.util.stream.Collectors;

public class Main{
    public static void main(String[] args) throws Exception{
        Scanner scanner = new Scanner(System.in);
        while(true){
             int sum=0;
            int fisrt = scanner.nextInt();
            if(fisrt==0){
                return;
            }else{
                while(fisrt!=0){
                    sum += scanner.nextInt();
                    fisrt--;
                }
                System.out.println(sum);
            }
        }
    }         
}
原文地址:https://www.cnblogs.com/jiyongjia/p/13338007.html