当前位置: 首页 > wzjs >正文

专门做旅游攻略的网站有哪些网站开发的付款方式

专门做旅游攻略的网站有哪些,网站开发的付款方式,深圳网络推广系统,现在那个网站做视频最赚钱吗题目 1931. 用三种不同颜色为网格涂色 思路 先获取列表,上下左右的所有情况。解决一维的问题 然后所有一维的问题暴力循环。已知一个一维的解,可以对应其他一维解的列表(用于记忆化搜索) 然后使用递归,进行累加 代…
题目

1931. 用三种不同颜色为网格涂色

思路

先获取列表,上下左右的所有情况。解决一维的问题
然后所有一维的问题暴力循环。已知一个一维的解,可以对应其他一维解的列表(用于记忆化搜索)
然后使用递归,进行累加

代码
from collections import defaultdict# 用java的思维写的
class Solution(object):def colorTheGrid(self, m, n):mod = 10 ** 9 + 7# 初始化字典valid = dict()# 枚举一行中所有可能的值 3的m次方for mask in range(3 ** m):# 初始化一个list  list存放的是具体的color,用于前后值的比较# mask和list是相互对应的color = list()tmp = maskfor i in range(m):color.append(tmp % 3)tmp = tmp // 3  # 需要的是返回整数# 对color的各项进行校验flag = Falsefor i in range(m - 1):if color[i] == color[i + 1]:flag = Truebreakif not flag:valid[mask] = color# 需要预处理,上下两行的对应关系,key和list的结构# 遍历所有valid中的数值adjacent = dict()for key1, value1 in valid.items():adjacent_list = list()for key2, value2 in valid.items():# 需要遍历上下是否会冲突flag = Falsefor x, y in zip(value1, value2):if x == y:flag = Trueif not flag:adjacent_list.append(key2)adjacent[key1] = adjacent_listf = dict()g = dict()for key1, _ in valid.items():f[key1] = 1for i in range(1, n):g = dict()  # 这里需要清空数据for mask1 in valid.keys():for mask2 in adjacent[mask1]:# g[mask1] 如果取不到会报错if mask1 in g:g[mask1] += f[mask2]else:g[mask1] = f[mask2]if g[mask1] >= mod:g[mask1] -= modf = gsum = 0for v1, v2 in f.items():sum += v2return sum % mod# 用python的语法糖写
def colorTheGrid2(self, m, n):mod = 10 ** 9 + 7# 初始化字典valid = dict()# 枚举一行中所有可能的值 3的m次方for mask in range(3 ** m):# 初始化一个list  list存放的是具体的color,用于前后值的比较# mask和list是相互对应的color = list()tmp = maskfor i in range(m):color.append(tmp % 3)tmp = tmp // 3  # 需要的是返回整数if any(color[i] == color[i + 1] for i in range(m - 1)):continuevalid[mask] = color# 需要预处理,上下两行的对应关系,key和list的结构# 遍历所有valid中的数值adjacent = defaultdict(list)for key1, value1 in valid.items():for key2, value2 in valid.items():if not any(x == y for x, y in zip(value1, value2)):adjacent[key1].append(key2)f = defaultdict(int)for key1, _ in valid.items():f[key1] += 1for i in range(1, n):g = defaultdict(int)for mask1 in valid.keys():for mask2 in adjacent[mask1]:g[mask1] += f[mask2]g[mask1] = g[mask1] % modf = greturn sum(f.values()) % modsolution = Solution()
ans = solution.colorTheGrid(1, 1)
print(ans)
ans = solution.colorTheGrid(1, 2)
print(ans)
ans = solution.colorTheGrid(5, 5)
print(ans)ans = colorTheGrid2(None, 5, 5)
print(ans)dic = defaultdict(list)
dic["a"].append("11")
print(dic)  # defaultdict(<class 'list'>, {'a': ['11']})dict2 = dict()
value = list()
value.append("11")
dict2["a"] = value
print(dict2)  # {'a': ['11']}my_list = [5, 8, 12, 3, 7]
my_list2 = [my_list[i] * 2 for i in range(len(my_list))]
print(my_list2)"""
None相当于null
if not flag: 相当于!flag
adjacent[key1] = adjacent_list  相当于adjacent.put(key1,adjacent_list)  hashmap用法if mask1 in g:g[mask1] += f[mask2]    这里取值之前还需要进行key不在map(dict)的判断my_list = [5, 8, 12, 3, 7]
长度 len(my_list)  如果是java my_list.length()或者是my_list.size()python有if any的写法
my_list = [5, 8, 12, 3, 7]
result = False
for num in my_list:if num > 10:result = Truebreakresult = any(num > 10 for num in my_list)python 还有all的语法糖
my_list = [6, 8, 7, 9]
result = True
for num in my_list:if num <= 5:result = Falsebreak
result = all(num > 5 for num in my_list)这里直接初始化值dic = defaultdict(list)
dic["a"].append("11")
print(dic)  # defaultdict(<class 'list'>, {'a': ['11']})dict2 = dict()
value = list()
value.append("11")
dict2["a"] = value
print(dict2)  # {'a': ['11']}my_list = [5, 8, 12, 3, 7]
my_list2 = [my_list[i] * 2 for i in range(len(my_list))]
print(my_list2)
这个就像是java的流式处理,只是处理的逻辑前置了f = dict()
可以有四种方法
f.keys()
f.values()
f.items()
"""
总结

这里对于数据的处理上比较考验细节


文章转载自:

http://cHsSye1I.bpmft.cn
http://7Y09L6Wc.bpmft.cn
http://SwAYGwwD.bpmft.cn
http://BInXAW6g.bpmft.cn
http://aO47IKeK.bpmft.cn
http://UGbdCZH5.bpmft.cn
http://lciBEm60.bpmft.cn
http://CYjL6CCB.bpmft.cn
http://ABc6xLYs.bpmft.cn
http://WOyhTjVj.bpmft.cn
http://OCNCZKl1.bpmft.cn
http://GJRSzrab.bpmft.cn
http://Q0Vlp0iL.bpmft.cn
http://Jq8V9BJg.bpmft.cn
http://mHFVHwiQ.bpmft.cn
http://flHkU33P.bpmft.cn
http://Wz0a4CyW.bpmft.cn
http://2r9BNAXt.bpmft.cn
http://gVgVGcvd.bpmft.cn
http://eUBwDhFV.bpmft.cn
http://5NWAt9hZ.bpmft.cn
http://6OydmAe9.bpmft.cn
http://M7q5m2qe.bpmft.cn
http://g7IJrF14.bpmft.cn
http://Z6QlFplD.bpmft.cn
http://YNcUh7jH.bpmft.cn
http://dkHXVLl1.bpmft.cn
http://sFJ1Gysc.bpmft.cn
http://3cgjzRSN.bpmft.cn
http://BbgD8iHp.bpmft.cn
http://www.dtcms.com/wzjs/626581.html

相关文章:

  • 佛山网站优化公司营销网站费用
  • 镇江网站设计做字幕网站
  • 品牌网站建设报价单wordpress数据库删除
  • wordpress房产中介模板seo短视频入口
  • 做网站 怎么连到数据库自己做公司的网站
  • 漳州模板网站建设wordpress更换域名教程
  • 做盗版网站的中英文双语企业网站
  • 网站建设 办公系统软件开发公司属于什么企业类型
  • win8风格网站开发实例做网站做好用的软件
  • 网站运营有哪些岗位网页报价
  • 广州公司注册地址提供seo短视频加密路线
  • 北京seo网站管理个体工商户可以申请网站建设吗
  • 天津城市基础设施建设投资集团有限公司网站字母logo在线设计
  • 中升乙源建设公司网站一流的郑州网站建设
  • 高校网站建设费用mysql数据做彩票网站
  • 网站关键词标题怎么写自学编程网站
  • 海洋优质的网站建设主页网址
  • 个人网站如果做怎样用网络挣钱
  • 网站首页加载特效网站权限
  • 章丘做网站公司企业查找
  • 商业网站的后缀网站建设制作服务
  • 科技感十足的网站网站建设方案免费
  • 做淘口令网站电商营业执照
  • 备案期间 需要关闭网站WordPress分享到微博代码
  • 做网站需要什么花费app开发技术有哪些
  • drupal网站建设做网站哪个软件好
  • 专门做销售招聘网站聊城专业网站建设公司
  • 网站手机网站怎么建立飞鸟加速器
  • 深圳住房和建设局网站无法登陆浙江建设银行网站
  • 怎么做网站教程 用的工具带分页的wordpress模板