第一次用python做题感想

题目:http://codeforces.com/problemset/problem/148/A

题目很简单,就是两个循环。

 1 #! /usr/bin/env python
2
3 x = [input() for i in xrange(4)]
4 d = input()
5 cnt=0
6 #for i in xrange(1,d+1):
7 # for j in x:
8 # if i % j == 0:
9 # cnt+=1
10 # break
11 #cnt = sum(any(i%j==0 for j in x) for i in xrange(1,d+1))
12 cnt = len(set([i for j in x for i in xrange(1,d+1) if i%j==0]))
13 print cnt
  1. 输入数组很简单 x = [input() for i in xrange(4)]
  2. 一开始用C++的方法写两个for循环.
  3. 用sum和any函数,any函数:如果列表里有一个值为真就返回真。再用sum函数求总和。因为True=1。
  4. 构建一个set集合,因为set集合里的元素不重复,所有用len函数来求集合的长度。

感觉用python来写程序,代码少写很多了。

 

转载于:https://www.cnblogs.com/skyhacker/archive/2012/02/03/2337535.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值