一:求a+b的和
输入描述:
多组读入,每一行有两个数A, B。0 < A, B < 1000000
输出描述:
每行输出一个结果
示例1输入输出示例仅供调试,后台判题数据一般不包含示例
输入
1 1
输出
2
#coding=utf-8
# 本题为考试单行多行输入输出规范示例,无需提交,不计分。
import sys
for line in sys.stdin:
a = line.split()
print(int(a[0]) + int(a[1]))
二:给出n阶方阵里所有数,求方阵里所有数的和
输入描述:
输入有多个测试用例,每个测试用例第一行为一个整数n(n ≤ 1000),表示方阵阶数为n。接下来是n行的数字,每行n个数用空格隔开。
输出描述:
输出一个整数,表示n阶方阵的和
示例1输入输出示例仅供调试,后台判题数据一般不包含示例
输入
3 1 2 3 2 1 3 3 2 1
输出
18
#coding=utf-8
# 本题为考试多行输入输出规范示例,无需提交,不计分。
import sys
if __name__ == "__main__":
# 读取第一行的n
n = int(sys.stdin.readline().strip())
ans = 0
for i in range(n):
# 读取每一行
line = sys.stdin.readline().strip()
# 把每一行的数字分隔后转化成int列表
values = list(map(int, line.split()))
for v in values:
ans += v
print(ans)
1.在无限的整数序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...中找到第 n 个数字。
注意:n 是正数且在32为整形范围内 ( n < 231)。
示例 1:
输入: 3 输出: 3
示例 2:
输入: 11 输出: 0 说明: 第11个数字在序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ... 里是0,它是10的一部分。
class Solution:
# 1-9, 1 digit 9 * 1
# 10-99, 2 digit 90 * 2
# 100-999, 3 digit 900 * 3
# 1000 - 9999,4 digit 9000 * 4
def findNthDigit(self, n):
"""
:type n: int
:rtype: int
"""
if n < 10:
return n
i = 1
while n > 9 * 10 **(i - 1) * i:
n -= 9 * 10 **(i - 1) * i
i += 1
if n % i == 0:
return int(str(10 ** (i - 1) + n // i - 1)[-1])
else:
return int(str(10 ** (i - 1) + n // i)[n % i - 1])