Résolution avec Ruby, Perl, Java et Python AtCoder ABC 047 C Expression régulière

introduction

Ce thème

Ce thème, expression régulière Ruby Par exemple, si vous assemblez WWWWBBWBBB dans WB, il devient WBWB, et vous pouvez voir qu'il peut être transformé en une couleur en 3 fois. Ce type de traitement de chaîne peut être facilement résolu en utilisant des expressions régulières.

ruby.rb


s = gets.chomp
s.gsub!(/W+/, "W")
s.gsub!(/B+/, "B")
puts s.size - 1

«W +» représente un ou plusieurs caractères ** W ** consécutifs. Python

python.py


import re

s = input()
s = re.sub(r'W+', "W", s)
s = re.sub(r'B+', "B", s)
print(len(s) - 1)

ʻImport re` est requis lors de l'utilisation d'expressions régulières dans * Python *. Perl

perl.pl


chomp (my $s = <STDIN>);
$s =~ s/W+/W/g;
$s =~ s/B+/B/g;
print length($s) - 1, "\n";

Java

java.java


import java.util.*;

class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.next();
        sc.close();
        s = s.replaceAll("W+", "W");
        s = s.replaceAll("B+", "B");
        System.out.println(s.length() - 1);
    }
}
Ruby Python Perl Java
Longueur du code 71 Byte 97 Byte 87 Byte 310 Byte
Temps d'exécution 36 ms 38 ms 21 ms 239 ms
Mémoire 10076 KB 4468 KB 640 KB 35160 KB

Résumé

Site référencé

Recommended Posts

Résolution avec Ruby, Perl, Java et Python AtCoder ABC 047 C Expression régulière
Résolution avec Ruby, Perl, Java et Python AtCoder ABC 065 C-th power
Résolution avec Ruby, Perl, Java et Python AtCoder ABC 107 B Manipulation de chaînes
Résolution avec Ruby, Perl, Java et Python AtCoder CADDi 2018 C factorisation premier
AtCoder ABC 165 D Floor Function résolue en Ruby, Perl, Java et Python
Résolution avec Ruby, Perl, Java et Python AtCoder ABC 131 D Tri des tableaux
Résolution avec Ruby, Perl, Java et Python AtCoder ARC 086 C Hash Sorting
Résolution avec Ruby et Python AtCoder ABC133 D Somme cumulée
Résolution avec Ruby, Perl, Java et Python AtCoder ATC 002 A
Résolution avec Ruby et Python AtCoder ABC011 C Méthode de planification dynamique
Résolution avec Ruby, Perl, Java et Python AtCoder ATC 002 B
Résolution avec Ruby, Perl, Java et Python AtCoder Diverta 2019 Concours de programmation Manipulation de chaînes C
AtCoder ARC104 B Somme cumulative résolue en Ruby, Python et Java
Résolvez AtCoder ABC166 avec python
Résolution avec Ruby, Perl, Java et Python AtCoder AGC 033 A Recherche de priorité de largeur
Résoudre avec Ruby et Python AtCoder ABC084 D Somme cumulative des nombres premiers
Résolution avec Ruby, Perl, Java et Python AtCoder ARC 066 C Hash carré itératif
Résoudre ABC163 A ~ C avec Python
Résoudre ABC168 A ~ C avec Python
Résoudre ABC162 A ~ C avec Python
Résoudre ABC167 A ~ C avec Python
Résoudre ABC158 A ~ C avec Python
Résolution avec Ruby et Python AtCoder ABC178 D Méthode de planification dynamique
Résolution avec Ruby et Python AtCoder ABC151 D Recherche de priorité de largeur
Résolution avec Ruby et Python AtCoder ABC153 E Méthode de planification dynamique
Résolution avec Ruby et Python AtCoder ARC067 C factorisation premier
Résolution avec Ruby et Python AtCoder ABC138 D Liste adjacente
AtCoder ABC168 Une expression de cas résolue en Ruby et Python
[AtCoder] Résoudre ABC1 ~ 100 Un problème avec Python
Résoudre AtCoder ABC168 avec python (A ~ D)
Résolution en Ruby, Python et Java AtCoder ABC141 D Priority Queue
Résolution avec Ruby, Python et numpy AtCoder ABC054 B Calcul de la matrice
Résolution avec Ruby, Python et networkx AtCoder ABC168 D Liste adjacente
[AtCoder] Résoudre un problème de ABC101 ~ 169 avec Python
Résolvez AtCoder 167 avec python
Résolution avec Ruby et Python AtCoder Tenka1 Programmer Contest C Somme cumulative
Résolution avec Ruby et Python AtCoder ABC172 C Dichotomie de somme cumulée
Manipulation de chaîne C AtCoder ABC110 à résoudre dans Ruby
Défiez AtCoder (ABC) 164 avec Python! Un problème ~ C
Benchmarks langage C, Java, Python avec factorisation prime
Résoudre Atcoder ABC176 (A, B, C, E) en Python
Manipulation d'expressions régulières par Python
[Explication AtCoder] Contrôle ABC180 Problèmes A, B, C avec Python!
[Explication AtCoder] Contrôle ABC158 Problèmes A, B, C avec Python!
[Explication AtCoder] Contrôle ABC164 Problèmes A, B, C avec Python!
[Explication AtCoder] Contrôle ABC168 Problèmes A, B, C avec Python!
Scraping avec Node, Ruby et Python
Résoudre ABC166 A ~ D avec Python
Résoudre Atcoder ABC169 A-D avec Python
Remplacement de chaîne par une expression régulière Python
Résoudre ABC036 A ~ C avec Python
Résoudre ABC037 A ~ C avec Python
AtCoder JSC2019 Qual B à résoudre par Ruby et Python
[Commentaire d'AtCoder] Gagnez le problème ABC165 C "Many Requirements" avec Python!
Répertorier les chaînes de fractionnement et de jointure avec fractionnement et jointure (Perl / PowerShell / Java / Kotlin / Python)
Chevauchement d'expressions régulières en Python et Java
Résoudre ABC175 A, B, C avec Python