Problem:
Score: 200 points

Problem Statement

We have a string S consisting of lowercase English letters.

If the length of S is at most K, print S without change.

If the length of S exceeds K, extract the first K characters in S, append ... to the end of them, and print the result.

Constraints

K is an integer between 1 and 100 (inclusive).

S is a string consisting of lowercase English letters.

The length of S is between 1 and 100 (inclusive).

Input

Input is given from Standard Input in the following format:

K
S

Output

Print a string as stated in Problem Statement.

Sample Input 1

7
nikoandsolstice

Sample Output 1

nikoand...

nikoandsolstice has a length of 15, which exceeds K=7.

We should extract the first 7 characters in this string, append ... to the end of them, and print the result nikoand....

Sample Input 2

40
ferelibenterhominesidquodvoluntcredunt

Sample Output 2

ferelibenterhominesidquodvoluntcredunt

The famous quote from Gaius Julius Caesar.

Solution in C (GCC 9.2.1) (judge verdict: Wrong Answer)

#include<stdio.h>

/*K,Sの最大文字数*/
#define MAX_SIZE_K	100
#define MAX_MOJI_S	100

int main()
{
    int		N;
	int		i;
	int		count = 0;
	int		temp_max;
	char	S[MAX_MOJI_S] = "";
	
	scanf("%d", &N);			/* Nの取得 */
	scanf("%s", S);				/* Sの取得 */
	
	for(i=0; i<MAX_MOJI_S; i++){	/* 文字数の長さを取得*/
		if(S[i] != ""){
			count++;
		}
		else{
			break;
		}
	}
	
	if(N < count){					/* Nより文字列の方が長い場合	*/
		temp_max = N+4;
		for(i = N+1; i<temp_max; i++){
			S[i] = ".";
		}
		for(i = temp_max; i<MAX_MOJI_S; i++){
			S[i] = "";
		}
	}
	else{							/* Nより文字列の方が短い場合	*/
		/* 特に何もしない */
	}
	
    printf("%s\n", S);		/* 回答表示*/
    return 0;
}