Python编程基础第五章编程练习编程题:幻⽅的判断。题⽬内容:
⼀个n度幻⽅共有n的平⽅个数字的排列,它们都是不同的整数,在⼀个⽅块中,n个数字在所有⾏、所有列和所有对⾓线中的和都相同。
请编写is_magicsquare函数判断⼀个填充好数字的⽅形是否是幻⽅。
#在此处编写is_magicsquare函数的定义代码
if __name__=='__main__':
n = eval(input())
ls = []
for i in range(n):
ls.append(list(eval(input())))
#print(ls)
if is_magicsquare(ls)==True:
print('Yes')
else:
print('No')
输⼊格式:
html语言的作用是什么第⼀⾏输⼊⼀个整数n,表⽰该数字正⽅形的度数。然后下⾯是n⾏,每⾏包含n个⽤英⽂逗号分开的正整数。
输出格式:
如果是幻⽅则输出Yes,否则输出No。
输⼊样例:
2
1,2
3,4
输出样例:
No
输⼊样例:
2
4,4
4,4
输出样例:
No
r语言aggregate函数
输⼊样例:
3
查看weblogic服务状态8,1,6
3,5,7
4,9,2
输出样例:
Yes
输⼊样例:
4
16,9,6,3
5,4,15,10
11,14,1,8
2,7,12,13
输出样例:
Yes
时间限制:500ms内存限制:32000kb
代码:
def is_magicsquare(lst):
# 将list转换成集合,去掉重复元素,如果集合长度与list中元素数量相等,则说明没有重复数据
springcloudconfig本地配置中心
lst_set = set(lst[0])
for i in range(1, len(lst)):
lst_set.update(lst[i])
if len(lst)**2 != len(lst_set):
python基础代码练习
return False
zero_row_sum = sum(lst[0])
# 判断2个对⾓线上的数据和,并且都与第0⾏的数据对⽐
sum1 = sum([lst[i][i] for i in range(len(lst))])
sum2 = sum([lst[i][len(lst) - 1 - i] for i in range(len(lst))])
if sum1 != sum2 or sum1 != zero_row_sum or sum2 != zero_row_sum:
return False
for i in range(len(lst)):
# 判断第i⾏和第i列的数据是否相等,并且都与第0⾏的数据对⽐
if sum(lst[i]) != zero_row_sum or sum(lst[:][i]) != zero_row_sum or sum(lst[i]) != sum(lst[:][i]):
return False
return True
if __name__=='__main__':
n = eval(input())
ls = []
for i in range(n):
ls.append(list(eval(input())))
#print(ls)
if is_magicsquare(ls)==True:
print('Yes')
axios使用方法else:
print('No')
⽤例测试结果运⾏时间占⽤内存提⽰得分⽤例1通过37ms4748kb1
⽤例2通过37ms4632kb1
本次得分/总分:2.00/2.00分

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。