Pentru a putea rula codul, te rugăm să te autentifici.

Autentifică-te
main.cpp

Dificilă · 8

Memorie: 64 MB / 8 MB

Timp: 1 secundă

I/O: Fișiere

După aventurile în Pampasul argentian, Gigel s-a odihnit câteva zile în Buenos Aires. Interacționând cu localnicii și-a descoperit două noi pasiuni, fotbalul și TikTok-ul, iar norocul a făcut ca echipa lui preferată de fotbal să fie foarte activă pe TikTok. După fiecare meci câștigat, toti suporterii reacționează cu comentarii la postările care celebrează victoria. Perspicace, Gigel a observat că toate aceste comentarii sunt compuse doar din cactere din mulțimea {U,R,A,!}. Mai mult, acestea vor păstra mereu o ordine: toate caracterele caracterle de același fel sunt grupate într-o singură secvență iar ordinea caracterelor în secvență este identică ordinii din mulțime, adică toate caracterele U sunt la început, urmate de toate caracterele R, apoi toate caracterele A, iar la final toate caracterle !. Fiecare caracter poate apărea de orice număr de ori, inclusiv niciodată, iar lungimea mesajelor poate fi oricare.

Cerință

Analizând lista comentariilor apărute la ultima postare, Gigel își pune următoarele întrebări:

  1. Câte mesaje de o lungime n se pot forma astfel încât să respecte condițiile din enunț?
  2. Al câtelea mesaj în ordine lexicografică este mesajul pe care îl postează Gigel?

Date de intrare

Fişierul de intrare urale.in conţine, pe prima linie, un număr natural p:

  • pentru p = 1 se va rezolva doar prima cerință,
  • pentru p = 2 se va rezolva a doar doua cerință.

Pentru p = 1, pe a doua linie a fișierului de intrare se va afla un număr natural n. Pentru p = 2, pe a doua linie a fișierului de intrare se va afla un sir de caractere, reprezentând un mesaj valid.

Date de ieșire

Pentru p = 1, fişierul de ieşire urale.out va conţine, pe o singură linie numărul mesajelor valide ce se pot forma de lungime n.
Pentru p = 2, pe prima linie a fișierului urale.out se va afla un număr natural reprezentând numărul de ordine al mesajului scris de Gigel în ordinea tuturor mesajelor. Mesajele sunt ordonate după lungime, iar la lungimi egale sunt ordonate lexicografic.
Pentru că rezultatele pot fi foarte mari, Gigel se mulțumește cu rezultatul modulo 666013 atât pentru p = 1 cât și pentru p = 2.

Restricții și precizări

  • pentru teste în valoare de 20% din punctaj: p=1 și n <= 1000
  • pentru alte teste în valoare de 30% din punctaj: p=1 și n <= 100000
  • pentru teste în valoare de 20% din punctaj: p=2 și lungimea șirului <=10
  • pentru alte teste în valoare de din punctaj 30%: p=2 și lungimea șirului este cel mult 50000 de caractere

Exemple

urale.in

1
3

urale.out

20

Explicație

Sunt 20 de șiruri formate din 3 caractere. În ordine lexicografică acestea sunt: UUU, UUR, UUA, UU!, URR, URA, UR!, UAA, UA!, U!!, RRR, RRA, RR!, RAA, RA!, R!!, AAA, AA!, A!!, !!!

urale.in

2
UAA

urale.out

22

Explicație

Ordinea șirurilor este U,R,A,!, UU,UR, UA,U!, RR, RA, R!, AA, A!, !!, UUU, UUR, UUA, UU!, URR, URA, UR!, UAA. Șirul UAA este al 22-lea.

urale.in

2
URAAA!!!

urale.out

438

Explicație

ID #811 Autor Fodor Bogdan
Set Olimpiada Locală de Informatică 2025, Brașov, clasa a X-a Adăugată de Alexis Alexis lexington
Capitol Clasa a IX-a/Probleme avansate/Probleme diverse
Licență

© 2021 – 2025 Aspire Education Labs SRL. Toate drepturile rezervate. Așa cum este specificat și în termeni și condiții, conținutul acestei pagini este protejat de legea drepturilor de autor și este interzisă copierea sau modificarea acestuia fără acordul scris al autorilor. Încălcarea drepturilor de autor este o infracțiune și se pedepsește conform legii.

Indicații oficiale de rezolvare a problemei

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam rem vel architecto dolore, nulla laboriosam atque laudantium sint commodi in molestiae excepturi dicta inventore eum, quos porro illum ratione ea! Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a? Nisi nostrum quod delectus corporis?

Lorem ipsum dolor sit amet consectetur adipisicing elit Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a? Nisi nostrum quod delectus corporis?

Lorem ipsum dolor sit amet consectetur adipisicing elit Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a?

#include <bits/stdc++.h>

    using namespace std;

    int main() {
        int n;
        cin >> n;
        cout << n * n << endl;
        return 0;
    }

Lorem:

Subtitle

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam rem vel architecto dolore, nulla laboriosam atque laudantium sint commodi in molestiae excepturi dicta inventore eum, quos porro illum ratione ea! Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a? Nisi nostrum quod delectus corporis?

Lorem ipsum dolor sit amet consectetur adipisicing elit Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a? Nisi nostrum quod delectus corporis?

Lorem ipsum dolor sit amet consectetur adipisicing elit Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a?

Lorem:

Pentru a vizualiza indicațiile problemei, te rugăm să te autentifici.

Indicații oficiale de rezolvare a problemei

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam rem vel architecto dolore, nulla laboriosam atque laudantium sint commodi in molestiae excepturi dicta inventore eum, quos porro illum ratione ea! Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a? Nisi nostrum quod delectus corporis?

Lorem ipsum dolor sit amet consectetur adipisicing elit Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a? Nisi nostrum quod delectus corporis?

Lorem ipsum dolor sit amet consectetur adipisicing elit Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a?

#include <bits/stdc++.h>

    using namespace std;

    int main() {
        int n;
        cin >> n;
        cout << n * n << endl;
        return 0;
    }

Lorem:

Subtitle

Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam rem vel architecto dolore, nulla laboriosam atque laudantium sint commodi in molestiae excepturi dicta inventore eum, quos porro illum ratione ea! Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a? Nisi nostrum quod delectus corporis?

Lorem ipsum dolor sit amet consectetur adipisicing elit Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a? Nisi nostrum quod delectus corporis?

Lorem ipsum dolor sit amet consectetur adipisicing elit Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum possimus dolores, molestiae sunt repellendus voluptate qui asperiores maiores cumque, quidem nihil facere distinctio! Odit, a?

Lorem:

Pentru a vizualiza rezolvarea problemei, te rugăm să te autentifici.

Soluții trimise la problema Urale

Soluții trimise 11
Soluții de 100 de puncte 0
Soluții de luna aceasta La fel de multe ca luna trecută. 0 +0
Rata de succes Rata dintre numărul de persoane care au obținut 100 de puncte și numărul total de persoane care au încercat problema. 0%

Autentifică-te pentru a vedea soluțiile tale.

Autentifică-te
  • Toate soluțiile tale le găsești aici. Găsești toate detaliile evaluării mai târziu, precum punctaje și sfaturi primite.
  • Poți să editezi soluțiile tale și să le retrimiți. Reia mai târziu de unde ai rămas, pentru că poți modifica soluții și să le reevaluezi.
  • Profesorii pot să vadă soluțiile tale și să îți trimită sugestii. Astfel, îți este mai ușor să înveți informatica, primind sfaturi bune chiar de la școală.

Ultimele soluții trimise 11

10000000 1000000 1000000 10000 10000
10000 10 10 100 10
1000000 1000 10000 10000000 1000
100 1000000 100 10 100000
100 10000000 10000 1000 1000
10000000 100000 10 10000 10000000
10 10000 1000000 10000 1000000
10000000 100 10 1000 1000
1000000 100000 1000 10000 100000
10000 1000000 1000 10 100
Tabelul se actualizează în timp real. ?? / ??

Comentarii 0

Autentifică-te pentru a putea comenta.

Autentifică-te