Cod sursa(job #1339873)

Utilizator andreeadimaDima Andreea andreeadima Data 11 februarie 2015 11:44:24
Problema Convertor Scor 100
Compilator cpp Status done
Runda rosedu_cdl_2015 Marime 1.21 kb
#include <fstream>
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
#define LG 2000000
ofstream fout("convertor.out");
char c[LG];
int i;
string s;

int main()
{
    int g_ok = 0;
	freopen("convertor.in","r",stdin);
	fread(c,1,LG,stdin);
	i=0;
    do
    i++;
    while (c[i] != '{');
    do
    {
		i++;
        if (c[i] == '"')
            g_ok++;
        if (g_ok == 1 && c[i] != '"' )
            s+=c[i];
        if ( c[i] == ',')
        {
            g_ok = 0;
            s+=c[i];
        }
    }
    while ( c[i]!= '}' );
    s+=',';
	s+='\n';
	i=0;
    g_ok = 0;
    do
    i++;
    while (c[i] != '{');
    do
    {
		i++;
        if (c[i] == '"')
            g_ok++;
        if (g_ok == 2 && c[i] != '"' && c[i] != ':' && c[i] != '{' && c[i] != '}' && c[i] != ']' && c[i] != ' '&& c[i] != ',' && (int)c[i] != 10)
            s+=c[i];
        if (g_ok == 3 && c[i] != '"')
            s+=c[i];
        if ( c[i] == ',')
            {
                g_ok = 0;
                s+=c[i];
            }
        if (c[i] == '{')
            s+='\n';
    }
    while (c[i] != ']');
    s+=',';
	fout<<s;
    fout.close();
    return 0;
}