网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
08月07日漏签0天
python吧 关注:476,185贴子:1,971,451
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 17回复贴,共1页
<<返回python吧
>0< 加载中...

编程新人,求助几道算法题的答案,来自coderbyte。一最

  • 只看楼主
  • 收藏

  • 回复
  • wenda14789
  • 白丁
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
编程新人,求助几道算法题的答案,来自coderbyte。
一
最远的节点
让功能FarthestNodes(strArr)读取strArr ,它将是表示这两个节点之间路径的连字符数组。例如:[“ ab”,“ bc”,“ bd”]表示存在从节点a到b(从b到a),从b到c以及从b到d的路径。您的程序应确定图中存在的最长路径,并返回该路径的长度。因此,对于上面的示例,由于路径abc和dbc ,您的程序应返回2。路径abc也表示存在路径cba。图中将不存在循环,并且每个节点都将连接到图中的其他某个节点。
例子
输入:[“ be”,“ bc”,“ cd”,“ ab”,“ ef”]
输出:4
输入:[“ ba”,“ ce”,“ bc”,“ dc”]
输出:3
二
位图孔
让函数BitmapHoles(strArr)接受存储在strArr中的字符串数组,这将是一个0和1的2D矩阵,并确定该矩阵中存在多少个孔或0的连续区域。连续区域是一个在四个方向(上,下,左或右)中的一个或多个方向上存在一组相连的0的区域。例如:如果strArr是[ “10111”, “10101”, “11101”, “11111”],那么这看起来像下面的矩阵:
1 0 1 1 1
1 0 1 0 1
1 1 1 0 1
1 1 1 1 1
对于上面的输入,您的程序应返回2因为有两个单独的0连续区域,它们在矩阵中产生“空洞”。您可以假设输入将不为空。
例子
输入:[“ 01111”,“ 01101”,“ 00011”,“ 11110”]
输出:3
输入:[“ 1011”,“ 0010”]
三
和乘数
让函数SumMultiplier(arr)获取存储在arr中的数字数组,如果可以将任意两个数字相乘,则 返回字符串true,以便答案大于数组中所有元素之和的两倍。如果不是,则返回字符串false。例如:如果arr为[ 2、5、6,-6、16、2、3、6、5、3],则所有这些元素的总和为42,将其加倍为84。数组中有两个元素,16 * 6 = 96并且96大于84,因此您的程序应返回字符串true。
例子
输入:[2、2、2、2、4、1]
输出:false
输入:[1、2、10、3、1、12]
输出:true


  • 雨巷纸伞-迷途
  • 状元
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
一二题好麻烦。。。三很简单
date = [2,5,6,-6,16,2,3,6,5,3]
max1,max2,*_ = sorted(date,reverse=True)
print(sum(date) < max1*max2)


2025-08-07 17:27:46
广告
不感兴趣
开通SVIP免广告
  • 雨巷纸伞-迷途
  • 状元
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
二题


  • 雨巷纸伞-迷途
  • 状元
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
data = ['10111','10101','11101','11111']
dict1 = {}
for x in range(len(data)):
for y in range(len(data[0])):
if data[x][y] == '0':
for index,i in enumerate(dict1.values(),start=1):
if (x-1,y) in i or (x,y-1) in i:
dict1[index].append((x,y))
break
else:
dict1[len(dict1)+1] = [(x,y)]
for y in data:
print(y)
print(dict1)
print(len(dict1))


  • 雨巷纸伞-迷途
  • 状元
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
一题,好麻烦。。。。就这样了。。不想写完整了。。


  • 雨巷纸伞-迷途
  • 状元
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
# data = ['be','bc','cd','ab','ef']
data = ['ba','ce','bc','dc']
# data = ['ab','bc','bd']
# 所有节点
set1 = set(''.join(data))
# 节点连接的节点
dict1 = {}
print(set1)
for i in data:
a,b = i
dict1.setdefault(a,[])
dict1.setdefault(b,[])
dict1[a].append(b)
dict1[b].append(a)
print(dict1)
# 递归节点路径
def print_path(pathname, n,level=0):
if pathname not in n:
n.append(pathname)
if not set(dict1.get(pathname)) - set(n):
# 打印递归深度,和路径
print(level, n)
return
for sub_name in set(dict1.get(pathname)) - set(n):
if sub_name not in n:
print_path(sub_name, n,level + 1)
# 删除错误路径【分叉到最底节点】
n = n[:n.index(sub_name)]
for i in dict1:
print('--------',i)
print_path(i[0],[])
print()


  • 雨巷纸伞-迷途
  • 状元
    14
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 17回复贴,共1页
<<返回python吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示