python刷题第四周
本周有所收获的题目:
第一题:
第4章-17 水仙花数(20 分) (20 分) 水仙花数是指一个N位正整数(N≥3),它的每个位上的数字的N次幂之和等于它本身。
例如:153=1×1×1+5×5×5+3×3×3。本题要求编写程序,计算所有N位水仙花数。
输入格式: 输入在一行中给出一个正整数N(3≤N≤5)
输出格式: 按递增顺序输出所有N位水仙花数,每个数字占一行。
我的代码:
n = int(input())
print(10 ** n)
for i in range(10 ** (n-1), 10 ** n):
hold = i
s = 0
for x in range(n):
s += int((hold % 10) ** n)
hold = int(hold / 10)
if hold < 1:
break
if s == i:
print(i)
别人的代码:
import math
n=int(input())
for i in range(int(math.pow(10,n-1)),int(math.pow(10,n))):
sum = 0
j=i
while(j>=1):
sum=sum+math.pow(j%10,n)
j=j//10
if(sum==i):
print('{:d}'.format(i))
学到了:
1.强制转换为int:
j=j//10
两个‘/’可以使除后的数成为整数。
我一开始只用了一个斜杠,一直无法得出正确结果,因为算出来的数带有小数。
第二题
第4章-19 矩阵运算 (20 分)
给定一个n×n的方阵,本题要求计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和。副对角线为从矩阵的右上角至左下角的连线。输入格式: 输入第一行给出正整数n(1<n≤10);随后n行,每行给出n个整数,其间以空格分隔。
输出格式: 在一行中给出该矩阵除副对角线、最后一列和最后一行以外的所有元素之和。
我的代码:
ls = []
n = int(input())
y = n - 1
s = 0
for i in range(n):
ls.append(input().split())
for x in range(n):
for y in range(n):
ls[x][y] = int(ls[x][y])
j = n - 1
for x in range(n - 1):
for y in range(n - 1):
if y != j:
s += ls[x][y]
j -= 1
print(s)
别人的代码:
N = int(input())
t = []
for i in range(N):
t.append(list(map(int,input().split())))
res = 0
for i in range(N-1):
for j in range(N-1):
if i+j!=N-1:
res += t[i][j]
print(res)
我学到了:
对于矩阵形式的数据输入,可以先创一个空列表,然后通过
t.append(list(map(int,input().split())))
将数据输入保存为二维数组的形式
本周刷题情况:
这周因为事情有点多以及自己的懒惰,只写了五道题,我要好好反省自己5555
python刷题第四周的更多相关文章
- Python 刷题笔记
Python 刷题笔记 本文记录了我在使用python刷题的时候遇到的知识点. 目录 Python 刷题笔记 选择.填空题 基本输入输出 sys.stdin 与input 运行脚本时传入参数 Pyth ...
- python刷题第二周
1: 第3章-5 字符转换 (15 分) 本题要求提取一个字符串中的所有数字字符('0'--'9'),将其转换为一个整数输出. 输入格式: 输入在一行中给出一个不超过80个字符且以回车结束的字符串. ...
- python刷题第三周
以下是本周有所收获的题目 第一题: 第4章-4 验证"哥德巴赫猜想" (20 分) 数学领域著名的"哥德巴赫猜想"的大致意思是:任何一个大于2的偶数总能表示为两 ...
- python刷题专用函数。。
无它,非bin()莫属. bin(x) Convert an integer number to a binary string. The result is a valid Python expre ...
- 【python刷题】LRU
什么是LRU? LRU是Least Recently Used的缩写,即最近最少使用,是一种常用的页面置换算法,选择最近最久未使用的页面予以淘汰.该算法赋予每个页面一个访问字段,用来记录一个页面自上次 ...
- python 刷题必备
1.判断输入的数字是否是回文数: 学习内容:把数字转成字符串 1. def is_palindrome(n): n=str(n) m=n[::-1] return n==m 2. tmp_str = ...
- Python 刷题知识点
if : elif : else : print('{0} \n{1} \n{2}' .format((a + b), (a - b), (a * b))) print(*[num**2 for nu ...
- python部落刷题宝学到的内置函数(二)
感觉到刷题宝有一个好处,也许也不是好处,它的答案必须是真正输出的值,也就是说应该输出字符串aaaa的时候,答案必须写成界面上返回的值,即'aaaa'.有利于真正记忆返回值类型,但是....太繁琐了 1 ...
- python部落刷题宝学到的内置函数
最近加入了python部落,感觉里面的刷题宝很有意思,玩了一下,知道了许多以前并不清楚的内置函数,然后感觉到快要记不住了,所以开始陈列一下 1.divmod(a,b):取a除以b的商和余数,功效等价于 ...
随机推荐
- noip模拟14
T1 离散化后线段树维护\(dp\),\(fi\)表示最小值为\(i\)时最多点亮多少个, 区间操作即可. Code #include<cstring> #include<cstdi ...
- SynchronizedMap和ConcurrentHashMap有什么区别
SynchronizedMap实现上在调用Map的所有方法是,对整个map进行了同步! public V put(K key, V value) { synchronized (mutex) {ret ...
- C# 高级进阶(一)
产品是怎样开发出来的 首先了解--产品MVP(Minimum Viable Product)的概念 最小可行产品--意思即开发最初应该是根据参品预期,最快构建出一个符合预期可行的功能合集,后期再通过用 ...
- 【mysql】用户和权限管理
1.用户管理 相关命令如下 命令 描述 备注 create user zhang3 identified by '123123'; 创建名称为zhang3 的用户,密码设为123123: sele ...
- GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组
1 drop table orders; 2 create table orders ( 3 o_id int auto_increment primary key, 4 orderdate date ...
- jQuery中的层级选择器(四、二):后代元素、子元素、相邻元素、兄弟元素
<!DOCTYPE html> <html> <head> <title>层次选择器</title> <meta http-equiv ...
- Linkerd 2.10(Step by Step)—配置超时
Linkerd 2.10 系列 快速上手 Linkerd v2 Service Mesh(服务网格) 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traefik2 ...
- webpack编译后的代码如何在浏览器执行
浏览器是无法直接使用模块之间的commonjs或es6,webpack在打包时做了什么处理,才能让浏览器能够执行呢,往下看吧. 使用commonjs语法 先看下写的代码, app.js minus.j ...
- spring boot应用常用配置
pom.xml <!--自动打包--> <plugin> <groupId>org.springframework.boot</groupId> < ...
- 25道经典Java算法题
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? //这是一个菲波拉契数列问题 [Java] 纯 ...