top of page

소스 코드 제출

공개·회원 52명

250413


/*

#include <stdio.h>

#include <string.h>

int s[101]={};

int s1[101]={};

int s2[101]={};

int t=0, t1=0, t2=0;

void push(int x)

{

s[t]=x;

t++;

}

void push1(int z)

{

s1[t1]=z;

t1++;

}

void push2(int v)

{

s2[t2]=v;

t2++;

}


void pop()

{

t--;

if (t<0)

{

t=0;

}

}

void pop1()

{

t1--;

if (t1<0)

{

t1=0;

}

}

void pop2()

{

t2--;

if (t2<0)

{

t2=0;

}

}

int main()

{

char a[101]={};

char b[101]={};

int c=0, g;

scanf("%s", a);

scanf("%s", b);

// 1. 스택에 숫자 준비

for (int i=strlen(a)-1 ; i>=0 ; i--)

{

push(a[i]-'0');

}

for (int i=strlen(b)-1 ; i>=0 ; i--)

{

push1(b[i]-'0');

}

if (strlen(a)>strlen(b))

{

g= strlen(a);

}

else

{

g= strlen(b);

}

// 2. 각 스택에서 숫자 꺼내서 계산

for (int i=0 ; i<g ; i++)

{

if (s[i]+s1[i]+c>9)

{

push2((s[i]+s1[i]+c)%10);

c=1;

}

else

{

push2(s[i]+s1[i]+c);

c=0;

}

}

if(c==1)

{

push2(1);

g++;

}

// 3. s2를 모두 pop해서 출력

for (int i=g-1 ; i>=0 ; i--)

{

printf("%d", s2[i]);

}

}


#include <stdio.h>

#include <string.h>

int s[101]= {};

int s1[101]= {};

int s2[101]= {};

int t=0, t1=0, t2=0;

void push(int x)

{

s[t]=x;

t++;

}

void push1(int z)

{

s1[t1]=z;

t1++;

}

void push2(int v)

{

s2[t2]=v;

t2++;

}


void pop()

{

t--;

if (t<0)

{

t=0;

}

}

void pop1()

{

t1--;

if (t1<0)

{

t1=0;

}

}

void pop2()

{

t2--;

if (t2<0)

{

t2=0;

}

}

int main()

{

char a[101]= {};

char b[101]= {};

int c=0, g;

scanf("%s", a);

scanf("%s", b);

// 1. 스택에 숫자 준비

for (int i=strlen(a)-1 ; i>=0 ; i--)

{

push(a[i]-'0');

}

for (int i=strlen(b)-1 ; i>=0 ; i--)

{

push1(b[i]-'0');

}

if (strlen(a)>strlen(b) || (strlen(a)==strlen(b) && strcmp(a, b) >= 0))

{

g= strlen(a);

for (int i=0 ; i<g ; i++)

{

if (s[i]-s1[i]-c<0)

{

push2((10+(s[i]-s1[i])-c));

c=1;

}

else

{

push2(s[i]-s1[i]-c);

c=0;

}

}

}

else if (strlen(b)>strlen(a) || (strlen(a)==strlen(b) && strcmp(a, b) < 0))

{

g= strlen(b);

for (int i=0 ; i<g ; i++)

{

if (s1[i]-s[i]-c<0)

{

push2((10+(s1[i]-s[i])-c));

c=1;

}

else

{

push2(s1[i]-s[i]-c);

c=0;

}

}

printf("-");

}

// 2. 각 스택에서 숫자 꺼내서 계산

while (s2[t2-1]==0)

{

if(t2==1)

{

break;

}

pop2();

g--;

}

// 3. s2를 모두 pop해서 출력

for (int i=g-1 ; i>=0 ; i--)

{

printf("%d", s2[i]);

}

}

*/


2회 조회
주소 : 경기도 용인시 광교중앙로 302 블루 스퀘어 602호
연락처 : 031) 216 - 1546 ,     031) 215 - 1546
사업자등록번호 : 465-92-00916
​학원 등록 제 4603호
bottom of page