Last active
January 25, 2024 00:20
-
-
Save rogerioagjr/d0a7c7645a23bd80d608 to your computer and use it in GitHub Desktop.
Capital das Empresas
This file contains 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
#include <cstdio> // scanf e printf | |
#include <algorithm> // sort | |
#define MAXN 100100 // defino o limite de n | |
using namespace std; // algorithm | |
int n, capital[MAXN], empr[MAXN]; // declaro a variáveis que vou usar | |
bool compara(int x, int y){ // declaro a função bool compara, que recebe dois inteiros | |
// se o capital do primeiro for maior que do segundo, estão na ordem certa | |
if(capital[x]>capital[y]) return true; | |
//se o programa chegar aqui, então a função não retornou na linha anterior | |
return false; // então o capital de x não é maior, logo x e y não estão em ordem | |
} | |
int main(){ | |
scanf("%d", &n); // leio o valor de n | |
for(int i=1; i<=n; i++) scanf("%d", &capital[i]); // leio o capital de cada empres | |
for(int i=1; i<=n; i++) empr[i]=i; // faço um vetor com o número de cada empresa | |
sort(empr+1, empr+n+1, compara); // ordeno o vetor pelo capital de cada empresa | |
for(int i=1; i<=n; i++) printf("%d ", empr[i]); // imprimo os valores no vetor | |
printf("\n"); // e imprimo a quebra de linha no fim da saída | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment