#include <stdlib.h> 
#include <stdio.h> 
#include <string.h> 
#define TamNomeEmpresas 21 
void  LeiaDadosDasEmpresas( int  quantEmpresas,  char  **  nomeEmpresas)  { 
    for  ( int  i =  0 ;  i <  quantEmpresas;  i++ )  { 
        printf ( "\n Digite o nome da %dª empresa: " ,  i 
+  1 ) ;          fgets ( nomeEmpresas
[ i
] ,  TamNomeEmpresas
,  stdin
) ;          sscanf ( nomeEmpresas
[ i
] ,  "%[^\n ]" ,  nomeEmpresas
[ i
] ) ;      } 
} 
int  main( )  { 
    int  quantEmpresas; 
    char  **  nomeEmpresas; 
    printf ( "Digite o numero de empresas que queira analisar: " ) ;      scanf ( "%d%*c" ,  & quantEmpresas
) ;      nomeEmpresas 
=  malloc ( quantEmpresas 
*  sizeof ( char  * ) ) ;     for  ( int  i =  0 ;  i <  quantEmpresas;  i++ )  { 
        nomeEmpresas
[ i
]  =  malloc ( TamNomeEmpresas
) ;     } 
    LeiaDadosDasEmpresas( quantEmpresas,  nomeEmpresas) ; 
    for  ( int  i =  0 ;  i <  quantEmpresas;  i++ )  { 
        printf ( "\n Nome da %dª empresa: %s" ,  i 
+  1 ,  nomeEmpresas
[ i
] ) ;      } 
    return  0 ; 
} 
 
 
				I2luY2x1ZGUgPHN0ZGxpYi5oPgojaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUgPHN0cmluZy5oPgojZGVmaW5lIFRhbU5vbWVFbXByZXNhcyAyMQp2b2lkIExlaWFEYWRvc0Rhc0VtcHJlc2FzKGludCBxdWFudEVtcHJlc2FzLCBjaGFyICoqIG5vbWVFbXByZXNhcykgewogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBxdWFudEVtcHJlc2FzOyBpKyspIHsKICAgICAgICBwcmludGYoIlxuRGlnaXRlIG8gbm9tZSBkYSAlZMKqIGVtcHJlc2E6ICIsIGkgKyAxKTsKICAgICAgICBmZ2V0cyhub21lRW1wcmVzYXNbaV0sIFRhbU5vbWVFbXByZXNhcywgc3RkaW4pOwogICAgICAgIHNzY2FuZihub21lRW1wcmVzYXNbaV0sICIlW15cbl0iLCBub21lRW1wcmVzYXNbaV0pOwogICAgfQp9CmludCBtYWluKCkgewogICAgaW50IHF1YW50RW1wcmVzYXM7CiAgICBjaGFyICoqIG5vbWVFbXByZXNhczsKICAgIHByaW50ZigiRGlnaXRlIG8gbnVtZXJvIGRlIGVtcHJlc2FzIHF1ZSBxdWVpcmEgYW5hbGlzYXI6ICIpOwogICAgc2NhbmYoIiVkJSpjIiwgJnF1YW50RW1wcmVzYXMpOwogICAgbm9tZUVtcHJlc2FzID0gbWFsbG9jKHF1YW50RW1wcmVzYXMgKiBzaXplb2YoY2hhciAqKSk7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IHF1YW50RW1wcmVzYXM7IGkrKykgewogICAgICAgIG5vbWVFbXByZXNhc1tpXSA9IG1hbGxvYyhUYW1Ob21lRW1wcmVzYXMpOwogICAgfQogICAgTGVpYURhZG9zRGFzRW1wcmVzYXMocXVhbnRFbXByZXNhcywgbm9tZUVtcHJlc2FzKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgcXVhbnRFbXByZXNhczsgaSsrKSB7CiAgICAgICAgcHJpbnRmKCJcbk5vbWUgZGEgJWTCqiBlbXByZXNhOiAlcyIsIGkgKyAxLCBub21lRW1wcmVzYXNbaV0pOwogICAgfQogICAgcmV0dXJuIDA7Cn0K