88 lines
2.9 KiB
Python
88 lines
2.9 KiB
Python
import numpy as np
|
|
import pandas as pd
|
|
|
|
|
|
a = np.arange(1000)
|
|
|
|
l = set([ "".join(sorted(f"{i:03d}")) for i in a ])
|
|
# 跨度
|
|
span_list = [int(i[2]) - int(i[0]) for i in l]
|
|
span_df = pd.value_counts(span_list)
|
|
print(span_df.to_dict())
|
|
print((220/span_df).to_dict())
|
|
|
|
f1 = lambda number: True if '8' in number or '5' in number else False
|
|
f2 = lambda number: True if sum(map(int, number)) in [10, 13, 14, 16, 17] else False
|
|
arr1 = list(filter(f1, l))
|
|
# print(len(arr1))
|
|
# print(arr1)
|
|
|
|
arr2 = list(filter(f2, arr1))
|
|
# print(len(arr2))
|
|
# print(arr2)
|
|
|
|
sum_list = [ sum(map(int, list(i))) for i in l]
|
|
sum_df = pd.value_counts(sum_list)
|
|
# print(sum_df.to_dict())
|
|
print((220/sum_df).to_dict())
|
|
|
|
# 组三
|
|
group3 = [ i for i in l if len(set(i)) == 2]
|
|
|
|
sum_group3_dict = {i: [] for i in np.arange(28)}
|
|
for i in group3:
|
|
sum_group3_dict[sum(map(int, list(i)))].append(i)
|
|
# 组六
|
|
group6 = [ i for i in l if len(set(i)) == 3]
|
|
sum_group6_dict = {i: [] for i in np.arange(28)}
|
|
for i in group6:
|
|
sum_group6_dict[sum(map(int, list(i)))].append(i)
|
|
# for i in sum_group3_dict.keys():
|
|
# f3 = lambda number: True if '7' not in number else False
|
|
# print(i, list(filter(f3, sum_group3_dict[i])))
|
|
# print(sum_group3_dict)
|
|
# sum_group3 = [ sum(map(int, list(i))) for i in group3]
|
|
# print(pd.value_counts(sum_group3).to_dict())
|
|
# for i in range(5, 20):
|
|
# _result = [item for item in sum_group3_dict[i]]
|
|
|
|
f1 = lambda number: len([i for i in number if int(i) %2 == 0]) != 0
|
|
f2 = lambda number: len([i for i in number if int(i) %2 == 1]) != 0
|
|
f3 = lambda n: True if int(n[1]) - int(n[0]) == 1 or int(n[2]) - int(n[1]) == 1 else False
|
|
f4 = lambda number: True if 'a' not in number else False
|
|
f5 = lambda number: True if '4' in number or '6' in number else False
|
|
f6 = lambda number: True if len(set('279').difference(number)) == 2 else False
|
|
arr = list(filter(f5, group3))
|
|
print(arr)
|
|
print(len(arr))
|
|
for i in sum_group6_dict.keys():
|
|
if i in range(11, 21):
|
|
# result = sum_group6_dict[i] + sum_group3_dict[i]
|
|
result = sum_group3_dict[i]
|
|
print("-"*15 + "组三" + "-"*15)
|
|
print(i, list(sorted(filter(f4, result))))
|
|
result = sum_group6_dict[i]
|
|
print("-"*15 + "组六" + "-"*15)
|
|
print(i, list(sorted(filter(f4, result))))
|
|
print()
|
|
|
|
|
|
# 连号
|
|
result_1 = []
|
|
# 大大小
|
|
result_2 = []
|
|
for i in a:
|
|
item = "".join(sorted(f"{i:03d}"))
|
|
if int(item[2]) - int(item[1]) == 1 or int(item[1]) - int(item[0]) == 1:
|
|
result_1.append(i)
|
|
item_2 = f"{i:03d}"
|
|
if int(item_2[0]) > 4 and int(item_2[1]) > 4 and int(item_2[2]) <= 4:
|
|
result_2.append(i)
|
|
f = lambda number: True if '6' in f"{number:03d}" else False
|
|
f = lambda number: True if '5' in f"{number:03d}" or '1' in f"{number:03d}" or '9' in f"{number:03d}" else False
|
|
arr = set([ "".join(sorted(f"{i:03d}")) for i in filter(f, result_1)])
|
|
# print(list(arr))
|
|
# print(len(arr))
|
|
# print(len(result_2))
|
|
# print(result_2[:20])
|
|
# 299669 |