第1关统计分数的麻烦

class Task:
def get_lost_scores(self, scores):
s = ""
index = [1 for i in range(10001)]
for i in scores:
index[i] = 0
for i in range(1,10001):
if(index[i] == 1):
s+=str(i)
ans = int(s) % 11
return ans if __name__ == '__main__':
task = Task
score = [2, 3, 5, 6, 7, 8, 9]
print(task.get_lost_scores(task, score))

第2关最强战队

#!/usr/bin/env python
# -*- coding: utf-8 -*-
class BestTeam:
def get_best_team(self, numbers, abilities, selectedNum, distance):
n = numbers
k = selectedNum
d = distance
res = 0
maxval = [([0] * 100) for i in range(50)]
minval = [([0] * 100) for i in range(50)]
for i in range(n):
minval[i][0] = abilities[i]
maxval[i][0] = abilities[i]
for i in range(n):
for j in range(1, k):
# for kk in range(i - 1, 0, -1):
kk = i - 1
while (kk >= max(i - d, 0)):
# print(kk)
maxval[i][j] = max(maxval[i][j],
max(maxval[kk][j - 1] * abilities[i], minval[kk][j - 1] * abilities[i]));
minval[i][j] = min(minval[i][j],
min(maxval[kk][j - 1] * abilities[i], minval[kk][j - 1] * abilities[i]));
kk -= 1
res = max(res, max(maxval[i][k - 1], minval[i][k - 1]));
return res if __name__ == '__main__':
bestTeam = BestTeam
numbers = 10
abilities = [12,11,8,9,15,22,7,9,12,10]
selectedNum = 3
distance = 5
print(bestTeam.get_best_team(bestTeam, numbers, abilities, selectedNum, distance))

第3关完美的团建活动

#!/usr/bin/env python
# -*- coding: utf-8 -*-
class TeamBuilding: def get_minium_steps(self, stones):
xx = 0
yy = 0
ans = 0
n = len(stones)
points = []
for i in range(n):
for j in range(n):
if stones[i][j] > 1:
points.append((stones[i][j], i, j))
points = sorted(points, key=lambda points: points[0]);
for nn, x, y in points:
mp = [([0] * n) for p in range(n)] ind = self.bfs(self, xx, yy, x, y, stones, mp, 0)
# print(ind)
if ind != -1:
ans += ind
else:
return -1
xx = x
yy = y
return ans def bfs(self, xx, yy, x, y, stones, mp, step):
if(xx == x and yy == y): return 0
mp[xx][yy] = 1
to = [[0, 1], [1, 0], [-1, 0], [0, -1]]
import queue
q = queue.Queue()
q.put((xx, yy, step))
while not q.empty():
tx, ty, stepp = q.get()
for i in range(4):
tox = tx + to[i][0]
toy = ty + to[i][1]
if self.judge(self, tox, toy, stones) and mp[tox][toy] != 1:
if tox == x and toy == y:
return stepp + 1
q.put((tox, toy, stepp + 1))
mp[tox][toy] = 1
return -1 def judge(self, x, y, stones):
l = len(stones)
w = len(stones[0])
if x < 0 or x >= l or y < 0 or y >= w:
return False
if stones[x][y] == 0:
return False
else:
return True if __name__ == '__main__':
t = TeamBuilding
stones = [[12,34,5,7,8,0],
[1,0,8,9,12,0],
[13,0,0,0,11,24],
[23,32,17,0,0,10],
[1,2,3,0,0,6],
[4,8,12,0,0,19]] # stones = [[2, 3, 4], [0, 0, 5], [8, 7, 6]]
print(t.get_minium_steps(t, stones))
# mp = [([0] * 3) for p in range(3)]
# print(t.bfs(t, 0, 0, 2, 0, stones,mp, 0))

全国高校绿色计算大赛 预赛第二阶段(Python)的更多相关文章

  1. 全国高校绿色计算大赛 预赛第二阶段(Python)第1关:统计分数的麻烦

    挑战任务 “绿盟杯”比赛过后,赛事承办方的各位工作人员们就开始分头统计各个参赛队伍和同学的成绩了.赛事规模很大,有10000个队伍参加.经过工作人员认真负责的统计,本来已经统计好了这一万个队伍的分数和 ...

  2. 全国高校绿色计算大赛 预赛第一阶段(Python)

    第1关将字符串反转 #!/usr/bin/env python # -*- coding: utf-8 -*- class Task: def inversion(self, str): # **** ...

  3. 全国高校绿色计算大赛 预赛第三阶段(Python)(随机数)

    只提交了随机数 (真心不会 T-T ) import csv import random import pandas as pd import numpy as np # 预测结果文件:src/ste ...

  4. 全国高校绿色计算大赛 预赛第一阶段(C++)第4关:计算日期

    挑战任务 我们吃的食物都有保质期,现在食品监督管理局想要制作一个能准确计算食品过期日期的小程序,需要请你来进行设计. 例如:A食品在2018年1月1日生产,保质期是20天,则它的过期日期在2018年1 ...

  5. 全国高校绿色计算大赛 预赛第一阶段(C++)第2关:扔桃子

    挑战任务 动物园有一只小猴子喜欢吃桃子,不过它有个很独特的习惯,每次都把找到的桃子分成相等的两份,吃掉一份,留一份.如果不能等分,小猴子就会丢掉一个然后再分.第二天再继续这个过程,直到最后剩一个桃子了 ...

  6. 全国高校绿色计算大赛 预赛第一阶段(C++)第3关:旋转数组

    挑战任务 在计算机中,一张数字图像,可以被看做是一个矩阵或者说数组. 学过线性代数的同学对矩阵肯定不陌生.一般来说,图像是一个标准的矩形,有着宽度(width)和高度(height).而矩阵有着行(r ...

  7. 全国高校绿色计算大赛 预赛第一阶段(C++)第1关:将字符串反转

    挑战任务 将输入的字符串str进行反转. 编程要求 补全右侧vector<char> inversion(string str)函数实现字符串的反转并返回反转之后的字符串,其中函数参数st ...

  8. 绿色计算大赛决赛 第二阶段 消息传递(斯坦纳树 状压dp+spfa)

    传送门 Description 作为公司老板的你手下有N个员工,其中有M个特殊员工.现在,你有一个消息需要传递给你的特殊员工.因为你的公司业务非常紧张,所以你和员工之间以及员工之间传递消息会造成损失. ...

  9. 全国绿色计算大赛 模拟赛第二阶段 (Python)

    第1关气温预测 def dailyTemps(temp_list): result = [] for ca in range(0, len(temp_list)-1): for i in range( ...

随机推荐

  1. EF 6.0 The conversion of a datetime2 data type to a datetime data type resulted in an out-of-range value. c#中的时间

    在SQL server 中,有两种日期时间类型: 1.DateTime 它的范围是 1753-1-1 至 9999-12-31 2.DateTime2 它的满园是 0001-01-01 至 9999- ...

  2. Luogu P2735 电网【真·计算几何/Pick定理】By cellur925

    题目传送门 刷USACO偶然遇到的,可能是人生中第一道正儿八经的计算几何. 题目大意:在平面直角坐标系中给你一个以格点为顶点的三角形,求三角形中的整点个数. 因为必修5和必修2的阴影很快就想到了数学中 ...

  3. 【正睿多校联盟Day4 T4 简单的数论题】

    题目名有毒 由于并没有系统地开始学习数论,所以数论题基本靠暴力. 然鹅本题的题解相当简单: emmm....我当你没说 一个简单易懂的方法是这样的: 1. 欧拉定理的推论 若正整数a,n互质,则对于任 ...

  4. 数学 Codeforces Round #308 (Div. 2) B. Vanya and Books

    题目传送门 /* 水题:求总数字个数,开long long竟然莫名其妙WA了几次,也没改啥又对了:) */ #include <cstdio> #include <iostream& ...

  5. ACM_回文素数

    回文素数 Time Limit: 2000/1000ms (Java/Others) Problem Description: 131号是一个主回文,因为它是一个素数和一个回文(当向后读时,它是相同的 ...

  6. 【图片匹配】--- SIFT_Opencv3.1.0_C++_ubuntu

    最近在捣鼓图片相似性匹配算法.这里先说一点必要的题外话: 如果是在同一个object不同角度拍摄的多张图片中,使用SIFT可以有不错的效果: 如果是寻找类别相同的图片(可能不是同一object),SI ...

  7. 奇葩问题: lsattr -d /data 显示:----------I--e- /data/

    奇葩问题 lsattr -d /data 显示:----------I--e- /data/ 问题影响: 其他权限中I(大写i) 目录下不能删除文件,不能添加文件 ================== ...

  8. 从源码对比DefaultServeMux 与 gorilla/mux

    从源码对比DefaultServeMux 与 gorilla/mux DefaultServeMux Golang自带的net/http库中包含了DefaultServeMux方法,以此可以搭建一个稳 ...

  9. [ USACO 2013 OPEN ] Photo

    \(\\\) Description 有一个长度为 \(n\) 的奶牛队列,奶牛颜色为黑或白. 现给出 \(m\) 个区间 \([L_i,R_i]\) ,要求:每个区间里 有且只有一只黑牛 . 问满足 ...

  10. mysql解压缩方式安装和彻底删除

    一.安装mysql (1)将下载下来的mysql压缩文件解压缩到需要安装mysql的目录中 (2)打开解压后的文件夹,复制default.ini文件并重命名为my.ini,此文件的相关配置为: (3) ...