Python 练习实例44 - Python 两个矩阵相加 Python 100例
两个 3 行 3 列的矩阵,实现其对应位置的数据相加,并返回一个新矩阵:
X = [[12,7,3],
[4 ,5,6],
[7 ,8,9]]
Y = [[5,8,1],
[6,7,3],
[4,5,9]]
程序分析:创建一个新的 3 行 3 列的矩阵,使用 for 迭代并取出 X 和 Y 矩阵中对应位置的值,相加后放到新矩阵的对应位置中。
{for r in Z: print(r)}------可以得到以下换行的矩阵。
[17, 15, 4]
[10, 12, 9]
[11, 13, 18]
程序代码:
X=[[12,7,3],
[4 ,5,6],
[7 ,8,9]]
Y=[[5,8,1],
[6,7,3],
[4,5,9]]
Z=[[0,0,0],
[0,0,0],
[0,0,0]]
for i in range(len(X)):
for j in range(len(X[0])):
Z[i][j] = X[i][j] + Y[i][j]
for r in Z:
print(r)
Python 练习实例45 Python 100例
题目:统计 1 到 100 之和。
程序代码:
a=0
for i in range(1,101):
a=a+i
print a
题目1230 聪明的班主任 (南阳oj)
时间限制:1000 ms | 内存限制:65535 KB
难度:1
描述
某校有一个神奇的班级,班里的人只喜欢语文或者数学或者英语,他们的班主任为此很头疼,因为班主任希望所有人都喜欢同一个科目,经过一番调研后发现,他可以通过自己的花言巧语使两个不同爱好的学生的爱好变成另一个爱好(比如他对一个喜欢语文的和一个喜欢数学的使用花言巧语,那么这二个人都会喜欢英语)
那么问题来了,聪明的班主任能否通过若干次花言巧语来让所有人都喜欢同一个科目
输入
多组测试样例;每组测试样例有3个数字a,b,c;分别代表这个班喜欢语文,喜欢数学,喜欢英语的人数,(输入数据范围为int型)
输出
如果班主任能够通过若干次改变使得所有人都喜欢同一个科目,输出“YES”,否则输出“NO”(不带引号);
样例输入
1 1 1
样例输出
YES
#include<stdio.h>
int main()
{
int a,b,c;
while(~scanf("%d%d%d",&a,&b,&c))
{
if((a-b)%3&&(b-c)%3&&(a-c)%3)
{
printf("NO\n");
}
else
{
printf("YES\n");
}
}
return 0;
}
题目1308 爱喝茶的住辉大大 (南阳oj)
时间限制:1000 ms | 内存限制:65535 KB
难度:2
描述
住辉大大是个生活很有情调的人,几乎每天都要品几口绿茶。 绿茶(Green Tea),是中国的主要茶类之一,是指采取茶树的新叶或芽,未经发酵,经杀青、整形、烘干等工艺而制作的饮品。其制成品的色泽和冲泡后的茶汤较多的保存了鲜茶叶的绿色格调。常饮绿茶能防癌,降脂和减肥,对吸烟者也可减轻其受到的尼古丁伤害。 绿茶以适宜茶树新梢为原料,经杀青、揉捻、干燥等典型工艺过程制成。其干茶色泽和冲泡后的茶汤、叶底以绿色为主调,故名绿茶。绿茶是将采摘来的鲜叶先经高温杀青,杀灭了各种氧化酶,保持了茶叶绿色,然后经揉捻、干燥而制成,清汤绿叶是绿茶品质的共同特点。中国生产绿茶的范围极为广泛,河南、贵州、江西、安徽、浙江、江苏、四川、陕西(陕南)、湖南、湖北、广西、福建是我国的绿茶主产省份。 但是住辉大大喝茶的时间是很有规律的,只有在k 的指数时刻 住辉大大才会喝茶,而且在第L分钟之前住辉大大是不会喝茶的(因为他不渴),但是一旦超过第R分钟住辉大大就不再喝茶,比如当L=1,R=4 ,K=2时,第1分钟是2的0次方,住辉大大会喝一次茶,第2分钟是2的1次方,住辉大大会再喝一次茶,第4分钟是2的2次方,住辉大大又饮一口,但是第8分钟时已超过R,住辉大大就会停止喝茶。 现在输入L,R,K,求住辉大大第几分钟会喝茶?
输入
首先第一行T组样例。(T<=50) 接下来T行每行有三个数,分别是L,R,K。(1≤L≤R≤10的18次方, 2≤K≤10的9次方)
输出
输出住辉大大会喝茶的时间。如果住辉大大没有喝茶则输出-1。 注意: 建议使用long long
样例输入
2
1 4 2
2 4 5
样例输出
1 2 4
-1
程序代码:
#include <stdio.h>
int main()
{
int L,R,K,i,sum;
scanf("%d",&i);
while(i--)
{
sum=1;
scanf("%d%d%d",&L,&R,&K);
if(L==1)
{
printf("%4d",L);
}
if(K>R)
{
R=0;
if(L!=1)
{
printf("-1");
}
}
while (sum<R)
{
sum=sum*K;
if (sum>=L)
{
printf("%4d",sum);
}
}
printf("\n");
}
}