#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void allocateAndFreeString(int n,const char* inputString){
    if(n<=0||n>100){
        printf("Invalid input\n");
        return ;
    }
    char* myString = (char*)malloc((n+1) * sizeof(char));
    if(myString == NULL){
        return ;
        
    }
    strncpy(myString ,inputString,n);
    myString[n]='\0';
    printf("Initialized String: %s",myString);
    free(myString);
    printf("\nMemory freed successfully");
}
int main(){
    int n;
    char inputString[101];
    scanf("%d",&n);
    while(getchar()!='\n');
    fgets(inputString,sizeof(inputString), stdin);
    if(inputString[strlen(inputString) -1]=='\n'){
        (inputString[strlen(inputString) -1] ==''\0');
        
    }
    allocateAndFreeString(n, inputString);
    return 0;
}