You are on page 1of 2

#include <fstream>

#include <string>
using namespace std;
typedef struct
{int l,c,x;
char cc[8];
}tam;
tam e[301],aux;

int main()
{int i,j,k,n,s,ok;
char z;
ifstream f("excel.in");
ofstream g("excel.out");
i=1;
while (f>>z)
{f>>e[i].l;
f>>z;
f>>e[i].c;
f>>e[i].x;
j=1;
if(e[i].c> 12356630)
e[i].cc[j++]=(char)('A'+((e[i].c-12356631)/11881376)%26);
if(e[i].c> 475254)
e[i].cc[j++]=(char)('A'+((e[i].c-475255)/456976)%26);
if(e[i].c> 18278)
e[i].cc[j++]=(char)('A'+((e[i].c-18279)/17576)%26);
if(e[i].c> 702)
e[i].cc[j++]=(char)('A'+((e[i].c-703)/676)%26);
if(e[i].c> 26)
e[i].cc[j++]=(char)('A'+((e[i].c-27)/26)%26);
e[i].cc[j++]=(char)('A'+(e[i].c-1)%26);
e[i].cc[j]='\0';
for (k=1;k<j;k++)
g<<e[i].cc[k];
g<<e[i].l<<'\n';
f.get ();
i++;
}
n=i-1;
do {ok=0;
for (i=1;i<n;i++)
if (e[i].l>e[i+1].l)
{ok=1;
aux=e[i];
e[i]=e[i+1];
e[i+1]=aux;
}
}while (ok);
s=e[1].x;
if (e[1].l!=1)g<<e[1].l-1<<" 0 ";
for (i=1;i<n;i++)
if (e[i].l==e[i+1].l)
s+=e[i+1].x;
else {g<<s<<' ';
s=e[i+1].x;
if (e[i+1].l!=e[i].l+1)
g<<e[i+1].l-e[i].l-1<<" 0 ";
}
g<<s;
g<<'\n';
f.close ();
g.close ();
}

You might also like