牛客网OJ系统的常见输入输出——Python语言描述

本文提供了一系列算法练习题的描述及代码实现,涵盖了从简单的加法运算到字符串排序等多个主题,适合初学者进行算法实践和代码编写训练。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、A+B(1)

题目描述

计算a+b

输入描述:

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

输出描述:

输出a+b的结果

示例1

输入
1 5
10 20
输出
6
30

代码

while True:
    try:
        A = list(map(int, input().split(" ")))
        print(sum(A))
    except:
        break

二、A+B(2)

题目描述

计算a+b

输入描述:

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

输出描述:

输出a+b的结果

示例1

输入
2
1 5
10 20
输出
6
30

代码

n = int(input())
for i in range(n):
    A = list(map(int, input().split(" ")))
    print(sum(A))

三、A+B(3)

题目描述

计算a+b

输入描述:

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

输出描述:

输出a+b的结果

示例1

输入
1 5
10 20
0 0
输出
6
30

代码

while True:
    A = list(map(int, input().split()))
    if A[0] != 0 and A[1] != 0:
        print(sum(A))
    else:
        break

四、A+B(4)

题目描述

计算一系列数的和

输入描述:

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

输出描述:

每组数据输出求和的结果

示例1

输入
4 1 2 3 4
5 1 2 3 4 5
0
输出
10
15

代码

while True:
    A = list(map(int, input().split()))
    if A[0] != 0:
        print(sum(A)-A[0])
    else:
        break

五、A+B(5)

题目描述

计算一系列数的和

输入描述:

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

输出描述:

每组数据输出求和的结果

示例1

输入
2
4 1 2 3 4
5 1 2 3 4 5
输出
10
15

代码

n = int(input())
for i in range(n):
    A = list(map(int, input().split()))
    print(sum(A)-A[0])

六、A+B(6)

题目描述

计算一系列数的和

输入描述:

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

输出描述:

每组数据输出求和的结果

示例1

输入
4 1 2 3 4
5 1 2 3 4 5
输出
10
15

代码

while True:
    try:
        A = list(map(int, input().split()))
        print(sum(A[1:]))
    except:
        break

七、A+B(7)

题目描述

计算一系列数的和

输入描述:

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

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

输出描述:

每组数据输出求和的结果

示例1

输入
1 2 3
4 5
0 0 0 0 0
输出
6
9
0

代码

while True:
    try:
        A = list(map(int, input().split()))
        print(sum(A))
    except:
        break

八、字符串排序(1)

题目描述

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

输入描述:

输入有两行,第一行n

第二行是n个空格隔开的字符串

输出描述:

输出一行排序后的字符串,空格隔开,无结尾空格

示例1

输入
5
c d a bb e
输出
a bb c d e

代码

n = int(input())
s = input().split()
s.sort()
print(' '.join(s))

九、字符串排序(2)

题目描述

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

输入描述:

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

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

输出描述:

对于每组测试用例,输出一行排序过的字符串,每个字符串通过空格隔开

示例1

输入
a c bb
f dddd
nowcoder
输出
a bb c
dddd f
nowcoder

代码

while True:
    try:
        s = input().split()
        s.sort()
        print(' '.join(s))
    except:
        break

十、字符串排序(3)

题目描述

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

输入描述:

多个测试用例,每个测试用例一行。
每行通过,隔开,有n个字符,n<100

输出描述:

对于每组用例输出一行排序后的字符串,用','隔开,无结尾空格

示例1

输入
a,c,bb
f,dddd
nowcoder
输出
a,bb,c
dddd,f
nowcoder

代码

while True:
    try:
        s = input().split(",")
        s.sort()
        print(','.join(s))
    except:
        break

十一、本地自测

输入描述:

输入有多组测试用例,每组空格隔开两个整数

输出描述:

对于每组数据输出一行两个整数的和

示例1

输入
1 1
输出
2

代码

while True:
    try:
        a, b = map(int, input().split())
        print(a+b)
    except:
        break
### Java OJ 在线编程输入输出练习题目 #### A+B 计算 对于简单的加法计算,可以使用 `Scanner` 类来读取标准输入中的两个整数并打印它们的和。需要注意的是,当遇到零时结束程序[^1]。 ```java import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { int a = sc.nextInt(); int b = sc.nextInt(); if (a != 0 && b != 0) { System.out.println(a + b); } else { return; } } } } ``` #### 处理多组数据直到文件结尾 有时需要处理多个测试案例直至到达文件末尾(EOF),此时应该持续读入新行直到没有更多可用的数据为止[^3]。 ```java import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNextLine()) { String line = scanner.nextLine(); // 对每一行做进一步解析... } } } ``` #### 字符串排序与输出 给定一系列由空格分隔的字符串,先将其分割成数组形式再进行字典序排列最后逐个输出这些单词[^4]。 ```java import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNextLine()) { String[] words = in.nextLine().split(" "); Arrays.sort(words); StringBuilder resultBuilder = new StringBuilder(); for (String word : words) { resultBuilder.append(word).append(" "); } System.out.println(resultBuilder.toString().trim()); } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值