第一次用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/p/2337535.html