leetcode 2 두 수 더하기 (C 언어 버 전)
3027 단어 leetcode
#include
#include
struct ListNode {
int val;
struct ListNode *next;
};
struct ListNode* addTwoNumbers(struct
ListNode* l1, struct ListNode* l2) {
struct ListNode *t,*p,*q,*l;
t=(struct ListNode *)malloc(sizeof(struct ListNode));
t->val=0;
t->next=NULL;
p=l1;
q=l2; //p&q l1&l2 , malloc ->val,->next
l=t; //l t
while(p!=NULL&&q!=NULL)
{
struct ListNode*node=(struct ListNode*)malloc(sizeof(struct ListNode));
node->val=0;
node->next=NULL;
t->next=node;
t->val+=(p->val+q->val);
if(t->val>=10)
{
t->val-=10;
node->val=1;
}
p=p->next;
q=q->next;
if(p==NULL&&q==NULL&&node->val == 0) //
t->next=NULL;
t=t->next;
}
while(p!=NULL)
{
struct ListNode* node = (struct ListNode*)malloc(sizeof(struct
ListNode));
node->val=0;
node->next=NULL;
t->next=node;
t->val+=p->val;
if(t->val>=10)
{
t->val-=10;
node->val=1;
}
p=p->next;
if(p==NULL&&node->val == 0)
t->next=NULL;
t=t->next;
}
while(q!=NULL)
{
struct ListNode* node = (struct ListNode*)malloc(sizeof(struct
ListNode));
node->val=0;
node->next=NULL;
t->next=node;
t->val+=q->val;
if(t->val>=10)
{
t->val-=10;
node->val=1;
}
q=q->next;
if(q==NULL&&node->val == 0)
t->next=NULL;
t=t->next;
}
return l;
}
int main()
{
struct ListNode *l1,*l2,*l,*p1,*p2,*t;
l1=(struct ListNode*)malloc(sizeof(struct ListNode*));
l2=(struct ListNode*)malloc(sizeof(struct ListNode*));
l1->val=0;
l2->val=0;
l1->next=NULL;
l2->next=NULL;
p1=l1;
p2=l2; //p1&p2 , malloc
do
{
scanf("%d",&l1->val);
l=(struct ListNode*)malloc(sizeof(struct ListNode*)); // malloc , ,
l->val=0;
l->next=NULL;
l1->next=l;
l1=l1->next;
}while(getchar()!='
');
do
{
scanf("%d",&l2->val);
l=(struct ListNode*)malloc(sizeof(struct ListNode*));
l->val=0;
l->next=NULL;
l2->next=l;
l2=l2->next;
}while(getchar()!='
'); // getchar
t=addTwoNumbers(p1,p2); //
while(t!=NULL) // t->next!=NULL
{
printf("%d",t->val);
t=t->next;
}
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
0부터 시작하는 LeetCode Day8 「1302. Deepest Leaves Sum」해외에서는 엔지니어의 면접에 있어서 코딩 테스트라고 하는 것이 행해지는 것 같고, 많은 경우, 특정의 함수나 클래스를 주제에 따라 실장한다고 하는 것이 메인이다. 빠른 이야기가 본고장에서도 행해지고 있는 것 같은 코...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.