Cod sursa(job #2580762)

Utilizator DanielBarbulescuDaniel Barbulescu DanielBarbulescu Data 14 martie 2020 08:47:34
Problema Text Scor 80
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.87 kb
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <ctype.h>

#define NN 1500000
char s[NN];

int main()
{
	int S = 0,n = 0,adev=0,m=0;
	FILE* in = fopen("text.in", "r");
	if (in == NULL)
	{
		printf("Eroare la formarea fisierului de intrare!");
		return 1;
	}
	FILE* out = fopen("text.out", "w");

	while (!feof(in)) {
		//char s[1000000];
		fgets(s, 1500000, in);
		for (int i = 0;i < strlen(s);i++)
		{
			if (isalpha(s[i]) == NULL)
			{
				m++;//in caz ca sunt doar litere fara spatii sau enter la final sa mi dau seama si sa afisez nr total de caractere
				if (adev == 1)
					n++;
				adev = 0;
			}
			else
			{
				S++;
				adev = 1;
			}
		}
		if (isalpha(s[strlen(s)-1]) != NULL)
			n++;
	}
	if (n != 0)
		fprintf(out, "%d", S / n);
	else if (m == 0)
		fprintf(out,"%d", S);
	else
		fprintf(out, "0");
}