#include <stdio.h>
#include <stdlib.h>

#define MAX_TAM 100

questao1(){
	int original[MAX_TAM];
	int sentOriginal;
	int gerada[MAX_TAM];
	int sentGerada;
	int iCont, jCont;
	int N;
	
	int atual, ocorrencia;

	printf("Informe o numero de sequencias a serem geradas:\n");
	scanf("%d", &N);

	
	printf("Informe o tamanho da sequencia de entrada:\n");
	scanf("%d", &sentOriginal);
	
	for(iCont = 0; iCont < sentOriginal; iCont++){
		printf("Informe o %d elemento da sequencia:\n", iCont);
		scanf("%d", &original[iCont]);
	}

	printf("**************************************\n");

	for(jCont = 0; jCont < N; jCont++){
		for(iCont = 0; iCont < sentOriginal; iCont++)
			printf("%d", original[iCont]);
		
		for(iCont = 0, sentGerada = 0; iCont < sentOriginal; iCont++){
			atual = original[iCont];
			ocorrencia = 0;
			while(atual == original[iCont] && iCont < sentOriginal){
				ocorrencia++;
				iCont++;	
			}
			gerada[sentGerada++] = ocorrencia;
			gerada[sentGerada++] = atual;
			iCont--;
		}
		printf("\n");	
		
		for(iCont = 0; iCont < sentGerada; iCont++)
		  original[iCont] = gerada[iCont]; 
		
		sentOriginal = 	sentGerada;
	}
}

questao2(){
	int num;
	int iCont;
	int somaDivisores;
	int K;
	int qtdeAbundantes;

	printf("Informe a quantidade de abundantes:\n");
	scanf("%d", &K);
	
	qtdeAbundantes = 0;
	num = 1;
	
	while(qtdeAbundantes < K){
		for(iCont = 1, somaDivisores = 0; iCont <= num; iCont++){
			if(num%iCont == 0)
				somaDivisores += iCont; 
		}	
		if(somaDivisores > 2 * num){
		  printf("%d ", num);
		  qtdeAbundantes++;
	    }
	    num++;
	};
	  
	
}

questao3(){
	char string[MAX_TAM];
	int sentString;
	int iCont, jCont;
	int tamBloco;
	int posAlfabeto;
	int valor;
	int hash;

	printf("Informe o tamanho do bloco:\n");
	scanf("%d", &tamBloco);


	printf("Informe o tamanho da string de entrada:\n");
	scanf("%d", &sentString);
	
	for(iCont = 0; iCont < sentString; iCont++){
		printf("Informe o %d elemento da string:\n", iCont);
		fflush(stdin);
		scanf("%c", &string[iCont]);
	}

	for(iCont = 0; iCont < sentString; iCont++)
		printf("%c", string[iCont]);
	printf("\n");	
	
		
	for(iCont = 0, hash = 0; iCont < sentString; iCont++){
		if(string[iCont] >= 'A' && string[iCont] <= 'Z')
		  posAlfabeto = string[iCont] - 'A';
		else
		  posAlfabeto = string[iCont] - 'a';    
	    valor = posAlfabeto + (iCont % tamBloco) + (iCont / tamBloco);
		hash += valor;  
	}	
	
	hash %= 100;
	
	printf("HASH DA STRING : %d\n", hash);
	
	
}

main() {
 questao2();	
}
