Cod sursa(job #923853)

Utilizator catalinutzbCraciun Catalin catalinutzb Data 23 martie 2013 21:49:01
Problema Text Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.28 kb
#include <fstream>
#include <iostream>
#include <cstring>
using namespace std;
ifstream f("text.in");
ofstream g("text.out");

int main(){

    char T[100001];
    long i;
    long cuv=0;
    long lit=0;
    long lung;
    bool ok;

    while (!f.eof()){
        f.getline(T,100000,' ');
        ok=0;
        lung=strlen(T);
        for (i=0;i<=lung;i++){
            if ((((T[i]>='a')&&(T[i]<='z'))||((T[i]>='A')&&(T[i]<='Z')))||((T[i]>='0')&&(T[i]<='9'))){
               lit++;
               ok=1;
            }
            if (T[i]=='-'){
                if (((T[i-1]>='a')&&(T[i-1]<='z'))&&((T[i+1]>='a')&&(T[i+1]<='z')))
                    cuv++;
                else if (((T[i-1]>='a')&&(T[i-1]<='z'))&&((T[i+1]>='A')&&(T[i+1]<='Z')))
                    cuv++;
                else if (((T[i-1]>='A')&&(T[i-1]<='Z'))&&((T[i+1]>='a')&&(T[i+1]<='z')))
                    cuv++;
                else if (((T[i-1]>='A')&&(T[i-1]<='Z'))&&((T[i+1]>='A')&&(T[i+1]<='Z')))
                    cuv++;
                else if (((T[i-1]>='0')&&(T[i-1]<='9'))&&((T[i+1]>='0')&&(T[i+1]<='9')))
                    cuv++;
            }
        }
        if (ok)
            cuv++;
    }
    f.close();
    cout<<cuv;
    g<<lit/cuv;
    g.close();

    return 0;
}