牛客ACM模式输入输出练习(go语言)

练习网站:(20条未读私信) 牛客竞赛_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ (nowcoder.com)

1. A+B(1)

题目描述:

计算a+b

输入描述:

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

输出描述:

输出a+b的结果

 示例:

输入:

1 5

10 20

输出:

6 30     

package main

import (
    "fmt"
)

func main() {
    
    for{
        
        var a,b int
        _,err:=fmt.Scan(&a,&b)
        if err!=nil{
            break
        }
        
        
    fmt.Println(a+b)
    }
    
}

 这里是别的地方看到的更标准的答案:

package main

import (
	"fmt"
	"io"
)
func main() {
	var a, b int
	for {
		_, err := fmt.Scan(&a, &b)
		if err == io.EOF {
			break
		}
		fmt.Println(a + b)
	}
}

 2.A+B(2)

题目描述:

计算a+b

输入描述:

输入第一行包括一个数据组数t(1 <= t <= 100)
接下来每行包括两个正整数a,b(1 <= a, b <= 1000)

输出描述:

输出a+b的结果
示例:
输入:
2
1 5
10 20
输出:
6
30     
package main

import (
    "fmt"
)

func main() {
    var t int
    fmt.Scan(&t)
    
    for i:=0;i<t;i++{
        var a,b int
        fmt.Scan(&a,&b)
        
        fmt.Println(a+b)
    }
}

 3.A+B(3)

题目描述:

计算a+b

输入描述:

输入包括两个正整数a,b(1 <= a, b <= 10^9),输入数据有多组, 如果输入为0 0则结束输入

输出描述:

输出a+b的结果
示例:
输入:
1 5
10 20
0 0
输出:
6
30     

package main

import (
    "fmt"
)

func main() {
    var a,b int
    for {
        fmt.Scan(&a,&b)
        if a==0&&b==0{
            break
        }
        fmt.Println(add(a,b))
        
    }
}

func add(a,b int) int{
    return a+b
}

 4.A+B(4)

题目描述:

计算一系列数的和

输入描述:

输入数据包括多组。
每组数据一行,每行的第一个整数为整数的个数n(1 <= n <= 100), n为0的时候结束输入。
接下来n个正整数,即需要求和的每个正整数。

输出描述:

每组数据输出求和的结果
示例:
输入:
4 1 2 3 4
5 1 2 3 4 5
0
输出:
10
15

package main

import (
    "fmt"
)

func main() {
    for{
        var n int
        fmt.Scan(&n)
        if n==0{
            break
        }
        
        sum:=0
        for i:=0;i<n;i++{
            var a int
            fmt.Scan(&a)
            sum+=a
        }
        fmt.Println(sum)
    }
}

 5.A+B(5)

题目描述:

计算一系列数的和

输入描述:

输入的第一行包括一个正整数t(1 <= t <= 100), 表示数据组数。
接下来t行, 每行一组数据。
每行的第一个整数为整数的个数n(1 <= n <= 100)。
接下来n个正整数, 即需要求和的每个正整数。

输出描述:

每组数据输出求和的结果
示例:
输入:
2
4 1 2 3 4
5 1 2 3 4 5
输出:
10
15
package main

import (
    "fmt"
)

func main() {
    var t int
    fmt.Scan(&t)
    
    for i:=0;i<t;i++{
        var n int
        fmt.Scan(&n)
        sum:=0
        for i:=0;i<n;i++{
           var a int
           fmt.Scan(&a)
            sum+=a
            
            
        }
        fmt.Println(sum)
        
    }
}

6.A+B(6)

题目描述:

计算一系列数的和

输入描述:

输入数据有多组, 每行表示一组输入数据。
每行的第一个整数为整数的个数n(1 <= n <= 100)。
接下来n个正整数, 即需要求和的每个正整数。

输出描述:

每组数据输出求和的结果
示例:
输入:
4 1 2 3 4
5 1 2 3 4 5
输出:
10
15
package main

import (
    "fmt"
)

func main() {
    for{
        var n int
        _,err:=fmt.Scan(&n)
        if err!=nil{
            break
        }
        
        sum:=0
        for i:=0;i<n;i++{
            var a int
            fmt.Scan(&a)
            sum+=a
        }
        fmt.Println(sum)
    }
}

7.A+B(7)

题目描述:

计算一系列数的和

输入描述:

输入数据有多组, 每行表示一组输入数据。

每行不定有n个整数,空格隔开。(1 <= n <= 100)。

输出描述:

每组数据输出求和的结果
示例:
输入:
1 2 3
4 5
0 0 0 0 0
输出:
6
9
0

package main

import (
    "fmt"
    "bufio"
    "os"
    "strings"
    "strconv"
)

func main() {
    scan:=bufio.NewScanner(os.Stdin)
    
    for scan.Scan(){
        nums:=strings.Split(scan.Text()," ")
        sum:=0
        for i:=0;i<len(nums);i++{
            num,_:=strconv.Atoi(nums[i])
            sum+=num
           
        }
        fmt.Println(sum)
    }
}

8.字符串排序(1)

题目描述:

对输入的字符串进行排序后输出

输入描述:

输入有两行,第一行n

第二行是n个字符串,字符串之间用空格隔开

输出描述:

输出一行排序后的字符串,空格隔开,无结尾空格
示例:
输入:
5
c d a bb e
输出:
a bb c d e
package main
import (
"fmt"
"os"
"bufio"
"strings"
"sort"
)
//这里没有使用n,直接用输入输出完成了
func main(){
    var n int
    fmt.Scan(&n)
    
    scan:=bufio.NewScanner(os.Stdin)
    scan.Scan()
    num :=strings.Split(scan.Text()," ")
    sort.Strings(num)
    fmt.Println(strings.Join(num," "))

   
    
}

9.字符串排序(2)

题目描述:

对输入的字符串进行排序后输出

输入描述:

多个测试用例,每个测试用例一行。

每行通过空格隔开,有n个字符,n<100

输出描述:

对于每组测试用例,输出一行排序过的字符串,每个字符串通过空格隔开
示例:
输入:
a c bb
f dddd
nowcoder
输出:
a bb c
dddd f
nowcoder
package main

import(
    "fmt"
    "os"
    "bufio"
    "strings"
    "sort"
    
)

func main(){
    scan:=bufio.NewScanner(os.Stdin)
    
    for scan.Scan(){
        num:=strings.Split(scan.Text()," ")
        sort.Strings(num)
        fmt.Println(strings.Join(num," "))
    }
}

10.字符串排序(3)

题目描述:

对输入的字符串进行排序后输出

输入描述:

多个测试用例,每个测试用例一行。

每行通过空格隔开,有n个字符,n<100

输出描述:

对于每组用例输出一行排序后的字符串,用','隔开,无结尾空格
示例:
输入:
a,c,bb
f,dddd
nowcoder
输出:
a,bb,c
dddd,f
nowcoder

package main

import(
    "fmt"
    "bufio"
    "os"
    "strings"
    "sort"
    
)

func main(){
    scan:=bufio.NewScanner(os.Stdin)
    
    for scan.Scan(){
        num:=strings.Split(scan.Text(),",")
        sort.Strings(num)
        fmt.Println(strings.Join(num,","))
    }
}

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值