J'a I construit un escalier pour aller sur la lune, combien de façons puis - je poursuivre la sœur Chang'e?

SunshineLin 2021-09-15 08:23:31
construit escalier pour aller sur


Je participe au concours de contributions créatives de la mi - automne,Pour plus de détails, voir:Concours de contributions créatives de la mi - automne

Préface

J'ai réfléchi hier soir. , Pensez à un article sur la mi - automne ? Mais je ne vois que Chang'e. , Alors j'ai pensé Chang'e se précipite vers la lune, En d'autres termes, quelle est la route de Chang'e vers la lune? ? Si je construisais un escalier vers la lune, , Et construit avec succès , Combien de façons d'atteindre la lune? , Où est ma sœur Chang'e? ?

Comment

Parce que mes jambes sont courtes , Les escaliers ne peuvent être parcourus qu'une seule fois 2Un pas, Si les escaliers totalisent 3Un pas,Ou2Un pas, Je ne peux prendre les escaliers que comme ça. . Si le nombre de marches est différent , En fait, le nombre total de façons est différent. .

1631599280(1).png

Escalier vers la lune

C'est bon, Commençons à calculer. , Si je construis un escalier vers la lune, , Combien de marches y a - t - il dans cet escalier? ?

Distance de la lune

J'ai d'abord vérifié les données. , La distance entre la terre et la lune est 38.410 000 mètres,C'est - à - dire384000000M

1631599622(1).png

Hauteur et largeur de chaque étape

J'ai couru jusqu'à l'escalier de la compagnie. , Mesure spéciale de la hauteur et de la largeur de chaque escalier , Parce que je n'ai pas de règle. , J'ai utilisé mes chaussures comme règle.

1631599966(1).png

1631599952(1).png

Comme vous pouvez le voir,, Aussi large qu'une chaussure. , C'est à peu près la hauteur de mes chaussures. 1/2, Mes chaussures sont 42No.,26cm, C'est - à - dire que chaque étape a une largeur de 26cm,La hauteur est13cm

1631600281(1).png

Combien de marches au total ?

D'abord, en utilisant le théorème de Pythagore, on obtient que la ligne oblique de chaque étape est 29cm,Et puis3840000000 / 0.29 = 13241379300 J'ai calculé qu'il y avait tant d'escaliers vers la lune.

1631600683(1).png

Plusieurs façons

Craquage violent

let depth = 0;
function climbStairs(n) {
// Pile anti - explosion 
++depth;
if (depth > 1000) {
throw new Error(' Attention à la pile. ');
}
if (n < 1) {
return 0;
}
if (n == 1) {
return 1;
}
if (n == 2) {
return 2;
}
return climbStairs(n - 2) + climbStairs(n - 1);
}
console.log(climbStairs(13241379300)) // Ça a explosé. Je l'essuie. 
// throw new Error(' Attention à la pile. ');
// ^Error: Attention à la pile. 
Copier le Code

Fibonacci

var climbStairs = function(n) {
let arr = new Array(n).fill(0)
arr[0] = 1
arr[1] = 1
for (let i = 2; i <= n; i++) {
arr[i] = arr[i - 1] + arr[i - 2]
}
return arr[n]
};
console.log(climbStairs(13241379300)) // Erreur directe Je l'essuie.
// let arr = new Array(n).fill(0)
// ^
// RangeError: Invalid array length
Copier le Code

Planification dynamique

function climbStairs(n) {
if (n < 1) {
return 0;
}
// base case
if (n === 1) {
return 1;
}
if (n === 2) {
return 2;
}
// Parce que les transitions d'état ne concernent que les résultats de la dernière itération et de la dernière itération , Donc il n'y a que deux variables à stocker , Pas besoin de tableaux , Espace réduit 
let pre = 1;
let cur = 2;
for (let i = 3; i <= n; i++) {
let sum = pre + cur;
pre = cur;
cur = sum;
}
return cur;
}
console.log(climbStairs(13241379300)) // Infinity Infini,Je l'essuie.
Copier le Code

Ne jamais abandonner !!!

Je ne peux pas abandonner Chang'e. !!! Je vais me précipiter. !!!

Je pensais,C'est ça?JavaScript Je ne peux pas tenir un si grand nombre. ?

Alors je me suis précipité vers mes amis dans d'autres langues

1631603947(1).png

1631604056(1).png

On me l'a dit.,java Je ne supporte pas un tel nombre. ,J'ai pleuré.!!!

Ploïdisation !!!

1631604684(1).jpg

C'est impossible, Je me souviens de la doublure de Ninja. , Je me suis agrandi moi - même et les escaliers 10 millions de fois. , C'est comme ça.

1631604551(1).jpg

function climbStairs(n) {
if (n < 1) {
return 0;
}
// base case
if (n === 1) {
return 1;
}
if (n === 2) {
return 2;
}
// Parce que les transitions d'état ne concernent que les résultats de la dernière itération et de la dernière itération , Donc il n'y a que deux variables à stocker , Pas besoin de tableaux , Espace réduit 
let pre = 1;
let cur = 2;
for (let i = 3; i <= n; i++) {
let sum = pre + cur;
pre = cur;
cur = sum;
}
return cur;
}
console.log(climbStairs(1324)) // 3.6235839641122446e+276
Copier le Code

Je l'ai fait.3.6235839641122446e+276 Pour atteindre la sœur Chang'e. ,Oui.!!

Conclusion

Qui peut m'aider à trouver combien de types il y a? .. Je veux savoir quel est le nombre infini .. Dis - le - moi dans la zone de message. .. Il y a une récompense. ..

Si vous pensez que cet article vous aidera un peu,Fais - moi plaisir., Encouragez Lin Sanxin. . Ou peut - être rejoindre mon groupe de pêcheurs. Vouloir entrer dans le Groupe d'étude ,Groupe de pêche,Cliquez iciPêche Rejoignez le Groupe de pêche , J'ai des interviews en direct. ,Répondre aux questions et répondre aux questions

image.png

版权声明
本文为[SunshineLin]所创,转载请带上原文链接,感谢
https://qdmana.com/2021/09/20210914162236097M.html

  1. Fatal Magic: countless sacrifices under gorgeous magic
  2. Mon expérience d'entrevue principale est partagée avec l'expérience d'apprentissage
  3. Mon expérience d'entrevue Android de Tencent partage, plugin Android
  4. Partage de questions d'entrevue Java à double saut d'octets non - premier cycle, un article vous apprend à gérer l'entrevue réseau informatique,
  5. Questions d'entrevue CSS (notes)
  6. Syntaxe de base de la classe
  7. Héritage de classe
  8. Mise en œuvre simple de 30 minutes pour un filtrage rapide des chaînes de tableau 10W +.
  9. Vue 3 tri des documents démarrage rapide
  10. Collection de code de base JavaScript (1)
  11. National secret nginx Container actual Fighting
  12. Quelques lignes de css pour rendre votre page tridimensionnelle
  13. C'est super détaillé, de "finir" ce 300 pages de 1000 questions d'entrevue,
  14. Take you in-depth understanding of nginx basic login authentication (including all configuration steps and in-depth analysis)
  15. Après avoir mangé, assurez - vous d'augmenter votre salaire de 5K et de rester debout tard pour trier les questions d'entrevue Java de millet.
  16. Résumé des questions d'entrevue pour les entreprises Internet nationales de première ligne, qui doivent être posées lors de l'entrevue d'emploi Java de la grande usine en 2021,
  17. "L'amour à première vue", la nouvelle BMW 2 coupe réelle, vous êtes surpris?
  18. Questions d'entrevue de test avancé de Dachang, liste des compétences de base de l'entrevue Java,
  19. Tableau 2D trié par un champ
  20. JS est souvent utilisé pour déterminer si l'objet est vide
  21. Contrôle de l'arbre en vue converti en style de table
  22. CSS3 animation flash Effect
  23. Discuter des propriétés de la file d'attente pour l'événement bloc
  24. Node around USModules
  25. Webpack - - Premier aperçu (concept de base)
  26. Mise en œuvre du cadre de base mvvm par JS natif
  27. Calculer les propriétés par rapport aux auditeurs, etc.
  28. Configuration standard dockerfile et docker-composer.yml
  29. Collection de questions d'entrevue HTML
  30. Conteneur, définir la largeur et la hauteur ne répond pas?
  31. Introduction et syntaxe des objets (mise à jour à long terme)
  32. Bubble Mart invests in cat galaxy, which is a vertical e-commerce platform around the quadratic element
  33. Exigences et dépendances dans package-lock.json
  34. Mouvement tridimensionnel de la terre, du ciel et de la lune basé sur three.js
  35. Compréhension et analyse de l'objet de base JS
  36. Simple use of status data management (context, mobx, Redux)
  37. Simulated drumming
  38. Array method
  39. Performance optimization issue 03 - HTTP request optimization
  40. Vue learning -- watch listener
  41. Learn more about nexttick in Vue
  42. Talk about some moves used by vue3.0 in the project - External skill chapter (I)
  43. JavaScript genrator generator
  44. La dernière réponse à l'entrevue de développement Android, l'hiver froid de l'industrie
  45. Maserati's motorcycle has less than 10 in the world. It is definitely a work of art
  46. 2021 partage des questions du dernier examen écrit d'entrevue Android, pas d'accord
  47. Programmation asynchrone Java scirp, développement frontal de base
  48. 2021 dernier examen écrit d'entrevue Android, écrit trop bien
  49. Quels aspects doivent être pris en considération dans le tableau principal du distributeur libre - service?
  50. He inherited his mother's hundreds of millions of property for his boyfriend to squander. Unexpectedly, he was ruthlessly abandoned when he had 100 yuan left
  51. The fuel cost is half less than that of fuel vehicles at the same level. Is it really cheap to use song Pro DM?
  52. Le dernier résumé de l'expérience d'entrevue d'embauche de l'école Android de l'usine est nécessaire pour l'usine
  53. Le dernier dictionnaire avancé de programmeurs d'usine, l'expérience d'entrevue d'embauche de l'Agence de développement Android
  54. La dernière collection d'entrevues Android Golden nine Silver ten
  55. L'expérience d'entrevue de l'Ingénieur d'algorithme de saut d'octets, 2 mois d'entrevue Tencent, station B, Netease et ainsi de suite sur 11 entreprises résumé!
  56. La dernière collection d'entrevues d'Android Golden nine Silver ten recommande un projet github
  57. Yuan Li's recent situation revealed that he was obsessed with public welfare, dressed simply and fearless, grew fat, and married an 11-year-old husband
  58. Initial experience of template tool plop of [front end Engineering]
  59. Partager les dernières questions d'entrevue Android haute fréquence avec quelques conseils
  60. Iteratable object and class arrays