Created
December 31, 2021 08:16
-
-
Save gahr/abb9f7faa0054c70fc7c2c6c851c5824 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #define a_capo "\n" | |
| #define buttaci << | |
| #define chicchessia auto | |
| #define fine ; | |
| #define i_dati_di data | |
| #define incrementa(cosa) ++(cosa) | |
| #define intero int | |
| #define invariabile const | |
| #define invariabili const | |
| #define lettera char | |
| #define lettere char | |
| #define modello template | |
| #define nel | |
| #define nell | |
| #define operatore operator | |
| #define per_ogni for | |
| #define poi ; | |
| #define prendi(...) * __VA_ARGS__ | |
| #define primo(elemento) elemento.first | |
| #define principale main | |
| #define puntatore_a(...) __VA_ARGS__ * | |
| #define referenza_a(...) __VA_ARGS__ & | |
| #define relazione_disordinata unordered_map | |
| #define ridimensiona resize | |
| #define ritorna return | |
| #define schiera_di(...) initializer_list<__VA_ARGS__> | |
| #define secondo(elemento) elemento.second | |
| #define spazio_di_nomi namespace | |
| #define tipo typename | |
| #define tra : | |
| #define usando using | |
| #define uscita cout | |
| #define veramente_invariabile constexpr | |
| #include <initializer_list> | |
| #include <iostream> | |
| #include <unordered_map> | |
| usando spazio_di_nomi std fine | |
| relazione_disordinata<lettera, intero> conta_occorrenze(invariabile referenza_a(schiera_di(puntatore_a(lettere invariabili))) frase) | |
| { | |
| relazione_disordinata<lettera, intero> occorrenze fine | |
| per_ogni (puntatore_a(lettere invariabili) l{ prendi(i_dati_di(frase)) } poi prendi(l) poi incrementa(l)) | |
| { | |
| incrementa(occorrenze[prendi(l)]) fine | |
| } | |
| ritorna occorrenze fine | |
| } | |
| modello<tipo R> | |
| R& operatore<<(referenza_a(R) ruscello, referenza_a(invariabile schiera_di(puntatore_a(lettere invariabili))) frase) | |
| { | |
| per_ogni (puntatore_a(lettera invariabile) l{ prendi(i_dati_di(frase)) } poi prendi(l) poi incrementa(l)) | |
| { | |
| nel ruscello buttaci prendi(l) fine | |
| } | |
| ritorna ruscello fine | |
| } | |
| intero principale() | |
| { | |
| veramente_invariabile schiera_di(puntatore_a(lettere invariabili)) frase{ "buona fine e buon inizio" } fine | |
| relazione_disordinata<lettera, intero> invariabile occorrenze{ conta_occorrenze(frase) } fine | |
| nell uscita | |
| buttaci "nella frase \"" | |
| buttaci frase | |
| buttaci "\"" | |
| buttaci a_capo fine | |
| per_ogni(referenza_a(chicchessia invariabile) elemento tra occorrenze) { | |
| nell uscita | |
| buttaci "la lettera <" | |
| buttaci primo(elemento) | |
| buttaci "> occorre " | |
| buttaci secondo(elemento) | |
| buttaci " volte" | |
| buttaci a_capo fine | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment