Les Jeux de chiffres Python vous font vous arrêter

Python de rêve 2021-11-25 17:30:36
les jeux chiffres python vous

L'apéritif d'aujourd'hui,Simulons un jeu numérique sur une table——Sept.:De1À100Compte à tour de rôle,Chaque fois qu'il y a7Et7Un multiple de la personne qui va frapper.

C'est assez simple à mettre en œuvre,Tous ceux qui savent taper peuvent écrire.

for i in range(1,101):
if i%7==0 or '7' in str(i):
print('pass')
else:
print(i)

Et puis...,On va simuler un jeu de devinettes numériques,Mais ce n'est pas nous qui avons deviné,Mais avec l'idée d'une recherche à moitié faite,Voyez combien de fois vous pouvez deviner.Nous savons que,Le nombre maximum de recherches binaires estlog(N),C'est - à - dire:int(log(N))+1,ParN=300Par exemple,Max.6Une fois,.

import random
secret = random.randint(1,300)
high = 300
low=0
count=0
while 1:
guess = int((low+high)/2)
count+=1
if guess>secret:
high=guess
elif guess<secret:
low=guess
elif guess == secret:
print('Ce chiffre est:',guess)
print('J'ai deviné quelques fois:',count)
break

Enfin,Un peu plus difficile, Résolvons la grille des neuf Palais (Tout le monde sait, La solution au carré magique de troisième ordre est 8- Oui.).

Tout d'abord,,Nous utilisonsitertoolsDans le modulepermutationsFonction get1-9 Un arrangement complet de trois nombres choisis parmi ;

Ensuite, utilisez la boucle à trois niveaux et l'énoncé conditionnel , Violence trouver toutes les combinaisons admissibles : Où la somme des lignes ou des colonnes est 15, Juste la somme de deux lignes pour 15, Il ne reste plus qu'une ligne 15, Pour qu'on n'écrive que deux ;

Enfin, filtrer la matrice de répétition : Mettez la première et la deuxième rangées dans la collection , Si la longueur de leur intersection est 0, Ça veut dire qu'ils n'ont pas d'intersection ;Même chose., Il est naturel de définir deux lignes et une troisième , Alors n'écrivez plus .Enfin,Si votre temps n'est pas très stressant,Et je veux être rapidepythonAmélioration,Le plus important, c'est de ne pas avoir peur de souffrir.,Suggérez que vous puissiez obtenir le prix(Homophone):762459510 ,C'est vraiment bien.,Beaucoup de gens progressent rapidement,J'ai besoin que tu n'aies pas peur de souffrir.!Vous pouvez l'ajouter et le voir.~

Voici le Code:

import itertools
import numpy as np
nums=[p for p in itertools.permutations(range(1,10),3) if sum(p)==15] # Retirer tout et pour 15Combinaison de
for row1_1,row1_2,row1_3 in nums:
for row2_1, row2_2, row2_3 in nums:
for row3_1, row3_2, row3_3 in nums:
if row1_1+row1_2+row1_3==15 \
and row2_1+row2_2+row2_3==15 \
and row1_1+row2_1+row3_1==15 \
and row1_2+row2_2+row3_2==15 \
and row1_1+row2_2+row3_3==15 \
and row1_3+row2_2+row3_1==15:
row1=row1_1,row1_2,row1_3
row2=row2_1,row2_2,row2_3
row3=row3_1,row3_2,row3_3
if len(set(row1)&set(row2))== 0:
matrix=[row1,row2,row3]
print(matrix)

image

p=list(p for p in itertools.permutations(range(1,10),9) if sum([p[0],p[1],p[2]])==sum([p[3],p[4],p[5]])==15 \
and sum([p[0],p[3],p[6]])==sum([p[1],p[4],p[7]])==15 and sum([p[0],p[8]])==sum([p[2],p[6]]))
#print(p)

Nous notons que la dernière condition de jugement est sum([p[0],p[8]])==sum([p[2],p[6]]), En fait, c'est aussi Diagonal et pour 15Une variante de.Oui.、 Après que les colonnes ont été confirmées , Que la somme des extrémités diagonales soit égale , La valeur du point central est naturellement fixée .

Mais, Le temps d'exécution de cette instruction est le Code précédent 5X! En fait, les conditions de jugement des deux procédures sont les mêmes , La différence, c'est que le Code précédent exige d'abord 1-9 Prenez trois nombres , Ce processus est plus important que 1-9 L'alignement complet est beaucoup plus rapide , Et beaucoup moins. (C(3,9)Et9!), Donc, la Cardinalité dans la complexité temporelle du cycle suivant NBeaucoup plus petit que1-9 Nombre total de rangées .

image

Prestations:Réponse à un message privé【01】Disponible gratuitementpythonVidéo du Tutoriel de démarrage

版权声明
本文为[Python de rêve]所创,转载请带上原文链接,感谢
https://pythonmana.com/2021/11/20211125172423087g.html

  1. Debugging mm32f3277 from zhufei, transplanted with micro Python development board
  2. Recognizing numbers using OpenCV and python
  3. 真的太香了,Python速查表终于出中文版了
  4. Django REST Framework(DRF)教程:快速入门
  5. python django objects filter过滤查询:startswith year
  6. Data encapsulation of Excel test cases in Python
  7. 学员管理系统python
  8. 肝了一夜,8000字概括精髓,pandas必知必会50例!
  9. Python竟然可以画漫画!漫画版的故宫导游图,来袭!
  10. Networkx graph theory Dijkstra algorithm shortest path implementation, Python
  11. Draw a HelloWorld with Python turtle Library
  12. 运行django的服务器内存使用偶尔跳高一点,重启服务马上下来,是内存泄露吧
  13. Basic usage of Python tqdm module in machine learning training
  14. Python -- basic usage method and basic template of argparse module
  15. python-sockertserver并发编程思想
  16. Programmation simultanée du serveur de sockets Python
  17. Vue+Django 旅游网项目 首页前端实现
  18. [learning notes] Python - pyecarts
  19. Python automated operation and maintenance -- actual combat (I)
  20. Classic usage of pandas: iloc and LOC of data filtering
  21. Python 多分支语句的三种结构
  22. Calendar module of Python time series
  23. Python 输出指定范围的闰年
  24. A super easy to use Python standard library. It's great to operate directories and files
  25. Fatal Python error: init_ fs_ encoding: failed to get the Python codec of the filesystem encoding
  26. Using Python to obtain a video address is as simple as
  27. #yyds干货盘点# 6. Python 元组,不可变的列表,滚雪球学 Python
  28. Yyds Dry Inventory # 6. Python tuples, invariant List, snowball Learning Python
  29. You cannot enter the registration page using Django registration redux
  30. 笨办法学Python第十八天:更多文件操作
  31. Python编辑代码,帮个忙呗
  32. pandas转换object为int失败了,有人能解答吗
  33. python解释题,解释这串,所代表的意思
  34. 用python用while语句写1000以内能被5和9整除的数和个数
  35. #python 我写了一个“饭店”程序
  36. Comprehensive application of Python foundation -- Development
  37. Écrivez en python le nombre et le nombre d'entiers qui peuvent être divisés par 5 et 9 jusqu'à 1000 dans une instruction while
  38. python3.7 FileNotFoundError: [WinError 2] 系统找不到指定的文件。
  39. 最全面的Python重点知识汇总
  40. You can learn Python articles without reading online classes (day 4)
  41. You can learn Python articles without reading online classes (the third day)
  42. python中 我想爬取一个网页,我在cmd中pip list中已经把requests 以及bs4 弄好了 但是他还是提示我没有那个模块
  43. You can learn Python articles without reading online classes (the next day)
  44. You can learn Python articles without reading online classes (the first day)
  45. 在Python和Go项目之后使用Rust的经验分享 - scaleway
  46. 使用PyO3从Python调用 Rust:加速Python
  47. Python 3.7 filenotfounderror: [winerror 2] le système n'a pas pu trouver le fichier spécifié.
  48. Python 一切皆对象
  49. 【Pandas学习笔记01】强大的分析结构化数据的工具集
  50. 求各位亲们可以解答一下嘛,为什么跑不出来呀,大学Python
  51. 【Pandas学习笔记01】强大的分析结构化数据的工具集
  52. python飞机大战如何让飞机始终在界面中,不能跑出界面
  53. Python代码阅读(第63篇):数字奇偶性
  54. python建立⼀個圖形介⾯應⽤(GUI app)
  55. python接口自动化的html格式报告以邮件形式发送展示的原文很丑怎么处理
  56. 针对初学者,我建议你学这 3 个 Python AutoEDA 工具包
  57. #yyds干货盘点#Python-爬虫_urlib一个类型和六个方法
  58. Pour les débutants, je vous recommande d'apprendre ces 3 kits autoeda Python
  59. 我想问python怎么入门嘞?求各路人士
  60. Summary of today's Django lessons: data reverse query triggers error field 'score_ jieshoufankui‘ expected a number but got ‘‘-20211109