AtCoder ABC 169 C virgule flottante qui tient dans Ruby

introduction

Ce thème

AtCoder Beginner Contets C - Multiplication 3 Difficulty: 536

Ce thème, erreur due à une virgule flottante

wa1.rb


a, b = gets.split.map(&:to_f)
puts (a * b).floor

Puisqu'il est tronqué, «floor» est utilisé, mais «WA». WA2

wa2.rb


a, b = gets.split.map(&:to_f)
puts ((a.to_i * (b * 100)) / 100).floor

La stratégie de «100 fois» puis de division par «100» a échoué. WA3

wa3.rb


a, b = gets.split.map(&:to_f)
puts ((a.to_i * (b * 100)) / 100).to_i

Essayez de changer «floor» en «to_i» à la demande de Dieu. WA4

wa4.rb


a, b = gets.chomp.split
puts ((a.to_i * (b.to_f * 100).to_i) / 100)

Une stratégie pour faire du reçu de l'entrée standard une chaîne de caractères. AC

ac.rb


a, b = gets.chomp.split
puts ((a.to_i * (b.gsub!('.', '').to_i).to_i) / 100)

Une stratégie pour abandonner to_f par 100 fois ʻet supprimer les caractères avec la virgule décimale .`. $ \ giant {success} $ </ font>

Je ne sais pas ce qui était bon et ce qui était pauvre, mais j'étais quand même fatigué.

Résumé

  • Résolu ABC 169 C
  • Pas familier avec Ruby

** Addenda ** De bons articles ont été publiés

Recommended Posts

AtCoder ABC 169 C virgule flottante qui tient dans Ruby
Résolution avec Ruby, Perl et Java AtCoder ABC 113 C Reference
Problème atcoder ABC113 C
Tri par hachage AtCoder ABC 111 C résolu en Ruby, Perl et Java
problème atcoder ABC115 C
Résolution avec Ruby, Perl et Java AtCoder ABC 128 C
ABC177-Résoudre E avec Ruby
Micro-benchmark pour les nombres à virgule flottante à la puissance des entiers dans Ruby
Résolution avec Ruby, Perl et Java AtCoder ABC 129 C (Partie 1)
AtCoder ARC 081 C hash à résoudre en Ruby, Perl et Java
Résolution avec Ruby AtCoder ABC177 D Union Find
Résolution avec Ruby, Perl et Java AtCoder ABC 129 C (Partie 2) Méthode de planification dynamique
AtCoder Beginner Contest 169 A, B, C avec rubis
J'ai créé une bibliothèque d'extension Ruby en C
AtCoder ABC127 D hash à résoudre avec Ruby 2.7.1
Lourd en rubis! ??
Tableau 2D AtCoder ABC129 D résolu en Ruby et Java
AtCoder Beginner Contest 170 A, B, C jusqu'au rubis