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

Autentifică-te
main.cpp

ID #770 · Cupa InfoAs, ediția 7 · Sortarea folosind Divide et Impera

Problema La furat de corcoduse

Dificilă · 8

Memorie: 64 MB / 8 MB

Timp: 0.1 secunde

I/O: Fișiere

Nimic nu merge mai bine decât niște corcodușe proaspete și dulci într-o zi toridă de vară. Iată că și de data aceasta i-a lovit ispita pe cei doi frați, Vizer și Tarom, care acum se încumetă să fure niște corcodușe din grădina bunicilor.

Pentru a putea culege cât mai repede corcodușele, Vizer și Tarom analizează cu atenție pomii din grădină pentru a putea determina care corcoduși sunt cei mai buni la gust și mai ușor de luat. În grădina bunicilor lor se află n corcoduși așezați în linie. Vizer este de părere că o operațiune de succes de a lua corcodușe implică culegerea din exact doi pomi dintre cei n. Tarom îi dă dreptate, însă adaugă următoarea regulă pentru o operațiune de succes: dacă se aleg pomii i și j, cu 1 ≤ i < j ≤ n, atunci di trebuie să fie strict mai mare decât dj, unde di reprezintă cât de dulci sunt corcodușele din pomul cu indicele i (considerând că numerotăm corcodușii de la stânga la dreapta, de la 1 la n). Pentru simplitate, șirul (d1, d2, …, dn) este o permutare a șirului (1, 2, …, n).

Cam dubioasă regula… se gândește Vizer, însă căzut în patima corcodușelor, îi dă dreptate lui frac-su mai mare.

Cerință

Acum cei doi se întreabă în câte moduri pot alege doi corcoduși dintre cei n, cu condiția ca cel mai din stânga să aibă fructe mai dulci decât cel din dreapta.

Date de intrare

Fișierul de intrare corcoduse.in conține pe prima linie numărul natural n, iar pe următoarea linie n valori naturale separate prin câte un spațiu, reprezentând indicele de dulceață a celor n pomi de corcodușe, în ordine de la stânga la dreapta.

Date de ieșire

Fișierul de ieșire corcoduse.out conține un singur număr natural, reprezentând numărul de moduri de a selecta doi corcoduși astfel încât să aibă loc o operațiune de succes.

Restricții și precizări

  • 2 ≤ n ≤ 200.000
  • Cei n indici de dulceață reprezintă o permutare a mulțimii {1, 2, 3, …, n}

Subtask 1 (12 puncte)

  • Indicii de dulceață sunt în ordine crescătoare sau descrescătoare de la stânga la dreapta

Subtask 2 (42 de puncte)

  • 2 ≤ n ≤ 1000

Subtask 3 (6 puncte)

  • 1001 ≤ n ≤ 10.000

Subtask 4 (40 de puncte)

  • Restricțiile inițiale ale problemei

Exemplu

corcoduse.in

5
1 4 2 5 3

corcoduse.out

3

Explicație

Există doar 3 moduri de a efectua o operațiune de succes: selectând pomii cu indicii 2 și 3, 2 și 5 și 4 și 5.

ID #770 Autor Dominic Satnoianu
Set Cupa InfoAs, ediția 7 Adăugată de Alexis Alexis lexington
Capitol Clasa a X-a/Divide et Impera/Sortarea folosind Divide et Impera
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 La furat de corcoduse

Soluții trimise 182
Soluții de 100 de puncte 38
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. 54.1%

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 182

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

Comentarii 0

Autentifică-te pentru a putea comenta.

Autentifică-te