请编写一个函数,接收一个正整数n,生成一个包含成对元素的列表,需要符合条件0<= x <= y <= n
,并且保持升序排列。
示例:
输入:n,输出: [ [0, 0], [0, 1], [0, 2], [1, 1], [1, 2], [2, 2] ]
。
题目难度:简单
题目来源:codewars
def gen_pairs(n: int) -> list:
pass
assert gen_pairs(2) == [[0, 0], [0, 1], [0, 2], [1, 1], [1, 2], [2, 2]]
assert gen_pairs(0) == [[0, 0]]
def gen_pairs(n: int) -> list:
pairs_list = []
for i in range(n + 1):
for a in range(i, n + 1):
pairs = [i, a]
pairs_list.append(pairs)
return pairs_list
1 个赞
imp
(蛛丝马迹)
2021 年10 月 27 日 02:59
3
def gen_pairs(n: int) -> list:
returnList = []
for i in range(0,n+1):
for j in range(0,n+1):
if 0<= i <= j <= n:
tempList = [i,j]
returnList.append(tempList)
return returnList
assert gen_pairs(2) == [[0, 0], [0, 1], [0, 2], [1, 1], [1, 2], [2, 2]]
assert gen_pairs(0) == [[0, 0]]
1 个赞
def gen_pairs(n: int) -> list:
rise_list = []
for i in range(n+1):
for j in range(n+1):
if i <= j:
rise_list.append([i, j])
return rise_list
assert gen_pairs(2) == [[0, 0], [0, 1], [0, 2], [1, 1], [1, 2], [2, 2]]
assert gen_pairs(0) == [[0, 0]]
nobugs
2021 年10 月 27 日 05:23
6
def gen_pairs(n: int) -> list:
return [[i, j] for i in range(n + 1) for j in range(n + 1) if j >= i]
assert gen_pairs(2) == [[0, 0], [0, 1], [0, 2], [1, 1], [1, 2], [2, 2]]
assert gen_pairs(0) == [[0, 0]]
def gen_pairs(n: int) -> list:
result = []
for i in range(n+1):
for j in range(i,n+1):
result.append([i,j])
return result
assert gen_pairs(2) == [[0, 0], [0, 1], [0, 2], [1, 1], [1, 2], [2, 2]]
assert gen_pairs(0) == [[0, 0]]
1 个赞
return [[i, j] for i in range(n + 1) for j in range(i,n + 1) ]
也可以这样写 :grin:
1 个赞
zcx
(krystal)
2021 年10 月 27 日 10:04
9
def like_sample_method(n):
last_list=[]
for i in range(0,n+1):
for j in range(i,n+1):
last_list.append([i,j])
print(last_list)
lekaixin
(ALe阿乐)
2021 年11 月 4 日 09:53
10
def gen_pairs(n: int) -> list:
result_list=[]
for i in range(0,n+1):
for j in range(i,n+1):
list1=[i,j]
result_list.append(list1)
return result_list
assert gen_pairs(2) == [[0, 0], [0, 1], [0, 2], [1, 1], [1, 2], [2, 2]]
assert gen_pairs(0) == [[0, 0]]
public ArrayList<ArrayList<Integer>> genPairs(Integer integer){
ArrayList<ArrayList<Integer>> res = new ArrayList<>();
for (int i = 0; i <= integer ; i++) {
for (int j = i; j <=integer ; j++) {
if (0<=i && i<=j && j<=integer){
ArrayList<Integer> arrayList = new ArrayList<>();
arrayList.add(i);
arrayList.add(j);
res.add(arrayList);
}
}
}
return res;
}
def gen_pairs(n: int) -> list:
result = []
for i in range(n + 1):
for j in range(i, n + 1):
result.append([i, j])
return result
assert gen_pairs(2) == [[0, 0], [0, 1], [0, 2], [1, 1], [1, 2], [2, 2]]
assert gen_pairs(0) == [[0, 0]]