【笔试记录】关于牛客IDE的问题

牛客官网

# Python3

import sys 
for line in sys.stdin:
    a = line.split()
    print(int(a[0]) + int(a[1]))

简单的case 

n = list(input())
print(n) # ['b', 'a', 'n', 'a', 'n', 'a']

n, s = input().strip().split()
n = int(n)
s = int(s)

f = input().strip().split()
f = [int(i) for i in f]
ls = list(map(int, input().split()))
print(ls)
#[1, 2, 3, 4, 5, 6, 7]

复杂点的case

今天笔试遇到的问题,/(ㄒoㄒ)/~~

给定输入

要求输出

    coordinate = [1, 3, 4, 6, 10]
    money = [1, 5, 8, 4, 3]
#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
# 13-14行就是实际重要调用的函数
    print(ans)

# 有3个数字,n=3
# 3个数组分别是 4 5 6,所以values = [4,5,6]
# ans = 15

if __name__ == '__main__':
    t = int(input())
    while t:
        n = int(input())
        nums = input().split()
        print(nums)
        # poka(n,nums)
        t -= 1
    # 输入t表示有t个测试用例,对每个测试用例调用一遍poka函数
    # n表示nums中有多少个数字,nums为列表
  • Case 1

每个输入包含一个测试用例。
每个测试用例的第一行包含两个正整数,分别表示工作的数量N(N<=100000)和小伙伴的数量M(M<=100000)。
接下来的N行每行包含两个正整数,分别表示该项工作的难度Di(Di<=1000000000)和报酬Pi(Pi<=1000000000)。
接下来的一行包含M个正整数,分别表示M个小伙伴的能力值Ai(Ai<=1000000000)。
保证不存在两项工作的报酬相同。

输入

3 3 
1 100 
10 1000 
1000000000 1001 
9 10 1000000000
import sys
task = {}
lines = sys.stdin.readlines()
n, m = map(int, lines[0].strip().split())
for line in lines[1:-1]:
    if not line.strip().split():
        continue
    a, b = map(int, line.strip().split())
    task[a] = max(task.get(a, 0), b)

skills = map(int, lines[-1].strip().split())

 

 

  • Case 2

第一行 n, k (1 <= n, k <= 105) ,表示这堂课持续多少分钟,以及叫醒小易一次使他能够保持清醒的时间。
第二行 n 个数,a1, a2, ... , an(1 <= ai <= 104) 表示小易对每分钟知识点的感兴趣评分。
第三行 n 个数,t1, t2, ... , tn 表示每分钟小易是否清醒, 1表示清醒。

输入

6 3
1 3 5 2 5 4
1 1 0 1 0 0
n, k = map(int, sys.stdin.readline().strip().split())
a = list(map(int, sys.stdin.readline().split()))
b = list(map(int, sys.stdin.readline().split()))

 

  • Case 3

 

 


赛码网

case1:

   while 1:
        a = []
        s = input()
        if s != "":
            for x in s.split():
                a.append(int(x))

            print(sum(a))
        else:
            break

case2:

k = int(raw_input())
for i in range(k):
    n = int(raw_input())
    print(n)
    up = 2.
    down = 1.
    sum = 0
    for j in range(n):
        sum += up/down
        up, down = down, up
        up += down
    print("%.4f" %sum)

一些知识点回归

Python split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串。 

Python strip() 方法用于移除字符串头尾指定的字符(默认为空格)或字符序列。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值