关注
# -*-coding:utf-8 -*-
import sys
import numpy as np
from collections import OrderedDict
import collections
def print_lists(lists):
"""
打印二维列表
:param lists: List[List[int]]
:return: None
"""
for list in lists:
for i, x in enumerate(list):
print(x, end=' ')
print(end='\n')
# def fib(n, a, x):
# list = list()
# list.append(n)
# list.append(a)
# b = n + a
# list.append(b)
# while b <= max:
# b = n + a
# list.append(b)
# n, a = a, b
#
# return list
def fib(n , a, max):
list = []
b = 0
list.append(n)
list.append(a)
while b <= max:
b = n + a
n, a = a, b
list.append(b)
# a, b = b, a + b
# list.append(b)
# if max in list:
# weizhi = list.index(max)
return list
def solution(x):
ret = []
array = []
if x < 3:
return
if x == 3:
list1 = fib(1, 1, x)
list2 = fib(1, 2, x)
list3 = fib(2, 1, x)
array.append(list1)
array.append(list2)
array.append(list3)
else:
list1 = fib(1, 1, x)
list2 = fib(1, 2, x)
list3 = fib(2, 1, x)
array.append(list1)
array.append(list2)
array.append(list3)
for i in range(4, x+1, 1):
if i%2 == 0:
list1 = []
a = int(i/2)
list1 = fib(a, a, x)
array.append(list1)
else:
n = int(i/2)
a = int(i/2)+1
list1 = fib(n, a, x)
array.append(list1)
list1 = fib(a, n, x)
array.append(list1)
hash = OrderedDict()
print_lists(array)
for list in array:
if x in list:
weizhi = list.index(x) + 1
hash[weizhi] = hash.get(weizhi, 0) + 1
hash = OrderedDict(sorted(hash.items(), key=lambda x: x[0], reverse=False))
return hash
if __name__ == "__main__":
# 读取第一行的n
ret = []
for i in range(1):
x = int(sys.stdin.readline().strip())
# print(x)
ret_hash = solution(x)
for i, j in ret_hash.items():
ret.append([i, j])
print_lists(ret) 你看看我这个答案可以没,我自己测试是没问题,不过提示数组越界了。
查看原帖
点赞 2
相关推荐
牛客热帖
更多
正在热议
更多
# 你现在会用到哪些AI技能? #
6419次浏览 85人参与
# 蚂蚁求职进展汇总 #
123307次浏览 1163人参与
# 未岚大陆求职进展汇总 #
7652次浏览 84人参与
# 秋招踩过的“雷”,希望你别再踩 #
85614次浏览 1088人参与
# 我对___祛魅了 #
132479次浏览 736人参与
# 大厂VS公务员你怎么选 #
28127次浏览 397人参与
# 智慧芽求职进展汇总 #
1885次浏览 5人参与
# 你还有多少年退休? #
26929次浏览 192人参与
# 我的求职进度条 #
91893次浏览 1207人参与
# 实习在多还是在精 #
35279次浏览 243人参与
# 实习下班不想学习,正常吗? #
20403次浏览 174人参与
# 小马智行求职进展汇总 #
13739次浏览 50人参与
# 你的房租占工资的比例是多少? #
65009次浏览 800人参与
# 你见过哪些工贼行为 #
16899次浏览 91人参与
# 金蝶求职进展汇总 #
54083次浏览 263人参与
# 总结:哪家公司面试体验感最好 #
70350次浏览 416人参与
# 校招谈薪一定要知道的事 #
13601次浏览 118人参与
# 找工作中的小确幸 #
27531次浏览 281人参与
# 顺丰求职进展汇总 #
63588次浏览 314人参与
# 非技术岗投递进展 #
158120次浏览 1314人参与
# 反问环节如何提问 #
115580次浏览 2468人参与
# 你觉得材料多少算高薪 #
26297次浏览 159人参与