SlideShare a Scribd company logo
ํŒ€ ๋ช…   D0


    ์กฐ์› profile
20093447 : ๊น€๋„ํ˜•
20113311 : ์žฅ๋™๊ทœ
20093489 : ์†กํ•˜์œค

20113324 : ์ตœ์ˆ˜์˜
๊ณผ ์ œ ์ˆ˜ ํ–‰ ์ผ ์ง€


์ด๋ฆ„: 20์†Œ์† : ์ž๋ฃŒ๊ตฌ์กฐ 01๋ถ„๋ฐ˜ D0์กฐ


093447 ๊น€๋„ํ˜• ,20093489 ์†กํ•˜์œค ,20113324 ์ตœ์ˆ˜์˜ ,20113311 ์žฅ๋™๊ทœ


๊ณผ์ œ์ˆ˜ํ–‰๊ธฐ๊ฐ„: 14์ผ 5๋ฒˆ ๋ชจ์ž„ ์ด     10์‹œ๊ฐ„


I. ๊ณ„ํš์˜ ์ž‘์„ฑ

 โ‘ ์—ฐ๊ตฌ์ œ๋ชฉ: ํŒŒ์Šค์นผ์˜ ์‚ผ๊ฐํ˜•
 โ‘ก์—ฐ๊ตฌ๋ฐฐ๊ฒฝ: Array์— ๋Œ€ํ•œ ์ดํ•ด
 โ‘ข์ฐธ๊ณ ์ž๋ฃŒ: Fundamentals of Data Structures in C
             ๊ตฌ๊ธ€๊ฒ€์ƒ‰ , ์ฑ…(์—ดํ˜ˆ๊ฐ•์˜ Cํ”„๋กœ๊ทธ๋ž˜๋ฐ)
             ์‹œ๊ฐ„ ๊ณต๊ฐ„ ๋ณต์žก๋„ ์ฐธ๊ณ :
 http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040101&docId=68494777&qb
 =U3BhY2UgY29tcGxleGl0eQ==&enc=utf8&section=kin&rank=3&search_sort=0&sp
 q=0


 II. ๋ชฉ์ฐจ

       - ์ž„๋ฌด๋ถ„๋‹ด์— ๋Œ€ํ•˜์—ฌ ( 3์ชฝ )


       - ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ˆœ์„œ๋„ ( 4์ชฝ )


       - ๊ณ„ํš์˜ ์‹คํ–‰ ( 5~10์ชฝ )


       - ์‹œ๊ฐ„,๊ณต๊ฐ„ ๋ณต์žก๋„์˜ ๊ณ„์‚ฐ ( 11์ชฝ )


        - ๊ณผ์ œ๋ฅผ ๋งˆ์น˜๋ฉด์„œ( ๋งˆ์ง€๋ง‰ ์ชฝ )
โ€ป ์ž„๋ฌด ๋ถ„๋‹ด์— ๋Œ€ํ•˜์—ฌ



์กฐ์žฅ : ๊น€๋„ํ˜•
๋ณด๊ณ ์„œ ์ž‘์„ฑ, ์ตœ์ข… ์ข…ํ•ฉ, ํ”„๋กœ๊ทธ๋žจ ์„ค๋ช…์„œ.

์•Œ๊ณ ๋ฆฌ์ฆ˜ : ์žฅ๋™๊ทœ
์ž์—ฐ์‹์˜ ๊ณ„์‚ฐ ์›๋ฆฌ๋ฅผ ํŒŒ์•…ํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€์ž…ํ•˜๋Š” ์—ญํ• .


์ฝ”๋”ฉ : ๊น€๋„ํ˜•
ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•˜์—ฌ ๊ตฌ์กฐ ๊ฐœ์„  ๋ฐ ๋ฌธ์ œ์  ํ•ด๊ฒฐ.


์ž๋ฃŒ๊ฒ€ํ†  ๋ฐ ์Šค์ผ€์ค„ : ์†กํ•˜์œค
ํ† ๋ก  ๊ณ„ํš ๋ฐ ์Šค์ผ€์ค„ ๊ด€๋ฆฌ ์ค€๋น„๋œ ์ž๋ฃŒ ์žฌ๊ฒ€ํ† .


๊ฒ€์ƒ‰ ๋ฐ ํ† ์˜์ข…ํ•ฉ : ์ตœ์ˆ˜์˜
ํ† ์˜ ํ•œ ๋‚ด์šฉ ๊ธฐ๋ก ๋ฐ ๋ฌธ์ œ ๋ฐ ๊ถ๊ธˆ์  ์กฐ์‚ฌ.
โ— ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ˆœ์„œ๋„



(n๊ณผ m์— ๋Œ€ํ•ด์„œ๋Š” ์ž„์˜์˜ ์ˆซ์ž 100๊ณผ 30์„ ๋Œ€์ž…ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜)
์ˆ˜ํ–‰ 1์ผ์ฐจ (3/6 ํ™”)

๊ฐ•์˜์‹œ๊ฐ„์— 4,5๋ช…์”ฉ ์กฐ๋ฅผ ๊ตฌ์„ฑํ•จ. ์กฐ์›๋“ค ๊ฐ๊ฐ์˜ ํฌ์ง€์…˜์„ ์ •ํ•˜๊ณ ,
๊ธฐ๋ณธ์ ์ธ ๊ณผ์ œ์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ์œ„ํ•ด ๊ฐ์ž ์ฃผ์ œ(ํŒŒ์Šค์นผ์‚ผ๊ฐํ˜•)์— ๋Œ€ํ•˜
์—ฌ ์—ฐ๊ตฌํ•˜๊ธฐ๋กœํ•จ. ๋‹ค์Œ ๊ฐ•์˜์‹œ๊ฐ„์ด ๋˜๊ธฐ์ „์— ์กฐ์›๋ผ๋ฆฌ ๋ชจ์—ฌ ๊ณผ์ œ์—
๋Œ€ํ•˜์—ฌ ๋ฏธ๋ฆฌ ํ† ์˜ ํ•˜๊ณ , ์ข…ํ•ฉํ•ด ๋ณด๊ธฐ๋กœ ํ•จ.




์ˆ˜ํ–‰ 2์ผ์ฐจ (3/8 ๋ชฉ)

๊ฐœ์ธ๋ณ„๋กœ ๊ณผ์ œ์— ๋Œ€ํ•˜์—ฌ ์—ฐ๊ตฌ๋ฅผ ํ•˜๊ณ , ๊ธฐ๋ณธ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ œ์‹œํ•˜
์—ฌ, ๊ฐ€์žฅ ๊ธฐ๋ณธ์ด ๋˜๋Š” ์†Œ์Šค๋ฅผ ๋งŒ๋“ค์—ˆ์Œ. ์†Œ์Šค๋Š” ์ฃผ์–ด์ง„ ์กฐ๊ฑด์„ ๋งŒ์กฑ
ํ•˜๋Š” ๋ชจ๋“  ๊ฐ’(n=1000)์„ ์—ฐ์‚ฐํ•˜๊ณ , ๊ทธ ๊ฐ’ P(n,m)์„ ์ž…๋ ฅํ•˜์—ฌ ํ•ด๋‹น
๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š” ๊ตฌ์กฐ๋กœ ๋งŒ๋“ค์—ˆ์Œ. ํ•˜์ง€๋งŒ ๊ทธ ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š”๋ฐ ๋งŽ์€
์‹œ๊ฐ„๊ณผ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฐจ์ง€ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ž„. ์ด ์†Œ์Šค๋ฅผ ๊ฐ„๋‹จํžˆ ํ•˜๊ธฐ์œ„ํ•ด
์žฅ๋™๊ทœ๊ฐ€ ์ˆ˜์ •์„ ํ•˜์˜€๋Š”๋ฐ, n=1000๊ฐ’์„ ๋ชจ๋‘ ์—ฐ์‚ฐํ•˜์ง€์•Š๊ณ , ์ฃผ์–ด์ง€
๋Š” n๊ฐ’ ๋งŒํผ๋งŒ ์—ฐ์‚ฐํ•˜์—ฌ ์ถœ๋ ฅํ•˜๋„๋ก ํ•˜์˜€์Œ. ๊ทธ ๊ฒฐ๊ณผ ์—ฐ์‚ฐ์— ๋“ค์–ด๊ฐ€
๋Š” ์‹œ๊ฐ„์ด ๋งŽ์ด ์ค„์–ด๋“ค์—ˆ์Œ.
#include <stdio.h>
                                              int ar[1000][1000];
#include <stdio.h>                            int n,m;
                                              void main()
int ar[1000][1000];
                                              {
int n,m;
                                                int i,j;
                                                scanf("%d%d",&n,&m);
void main()                                     if(n>=1)
{                                               {
 int i,j;                                         ar[1][1]=1;
 ar[1][1]=1;                                      for(i=1;i<=n;i++)
                                                  {
    for(i=1;i<=1000;i++)
                                                    ar[i][1]=1;
    {
                                                    for(j=2;j<n;j++)
        ar[i][1]=1;
                                                    {



                                    โ‰ซ
        printf("%u ",ar[i][1]);
        for(j=2;j<=1000;j++)                  ar[i][j]=ar[i-1][j-1]+ar[i-1][j];
        {                                           }
                                                    ar[i][i]=1;
ar[i][j]=ar[i-1][j-1]+ar[i-1][j];                 }
                                                }
printf("%u ",ar[i][j]);
                                                for(i=1;i<=n;i++)
        }                                       {
        printf("n");                             for(j=1;j<=i;j++)
    }                                             {
 printf("p(n,m)?");                                 printf("%u ",ar[i][j]);
 scanf("%d%d",&n,&m);                             }
                                                  printf("n");
 printf("P(n,m) = %u",ar[n][m]);
                                                }
}
                                                printf("P(n,m)? %u",ar[n][m]);
                                                return 0;
                                              }



                        (n=1000๊ฐ’์„ ์—ฐ์‚ฐํ•˜๋Š” ๋ถ€๋ถ„์„ ์ œ๊ฑฐํ•˜๊ณ , n๋งŒํผ์˜ ๊ฐ’๋งŒ ๋ฐ›์•„์„œ ์—ฐ์‚ฐํ•˜๋„๋ก ์ˆ˜์ •.)
์ˆ˜ํ–‰ 3์ผ์ฐจ (3/10 ํ† )
์žฅ์†Œ : ๋ฉ”์‹ ์ €๋ฅผ ํ†ตํ•˜์—ฌ ์ธํ„ฐ๋„ท ํšŒ์˜
โ€ป ๊ฐœ์„ ์ 

์†Œ์Šค๋ฅผ ๋ถ„์„ํ•œ ๊ฒฐ๊ณผ 1ํ–‰์—์„œ๋Š” 1์—ด๋งŒ ์—ฐ์‚ฐํ•˜๋ฉด ๋˜๋Š”๋ฐ, n์—ด๊นŒ์ง€ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์—ฐ์‚ฐ๋Š” ๊ณผ์ •
์ด ์žˆ์Œ. ๊น€๋„ํ˜•์ด ๊ตฌ์กฐ๋ฅผ ๋‹ค์‹œ ํ•œ๋ฒˆ ๊ฐœ์„ ํ•˜์—ฌ ํ–‰์˜ ์ฆ๊ฐ€ํ•œ ์ˆ˜๋งŒํผ ์—ด์„ ๊ณ„์‚ฐํ•˜๋„๋ก ํ•˜์—ฌ
์—ฐ์‚ฐํšŸ์ˆ˜๋ฅผ ์ค„์ด๋Š” ๊ฒƒ์œผ๋กœ ์ˆ˜์ •. ๊ทธ๋ฆฌ๊ณ  ์†Œ์Šค์˜ ๋ถˆํ•„์š”ํ•œ ๋น„๊ต๋ฌธ์ด๋‚˜ ์—ฐ์‚ฐ๋ฌธ๋“ค์ด ์žˆ๋Š” ๋ถ€
๋ถ„๋„ ์ œ๊ฑฐํ•จ.
#include <stdio.h>                      #include <stdio.h>
int ar[1000][1000];                     int ar[1000][1000];
int n,m;                                int n,m;
void main()
                                        void main()
{
                                        {
  int i,j;
  scanf("%d%d",&n,&m);                   int i,j;
  if(n>=1)                               scanf("%d%d",&n,&m);
  {                                         ar[1][1]=1;
    ar[1][1]=1;                             for(i=2;i<=n;i++)
    for(i=1;i<=n;i++)                       {
    {
                                             ar[i][1]=1;
      ar[i][1]=1;
                                             for(j=2;j<=i;j++)
      for(j=2;j<n;j++)




                                    โ‰ซ
      {                                      {


ar[i][j]=ar[i-1][j-1]+ar[i-1][j];       ar[i][j]=ar[i-1][j-1]+ar[i-1][j];
      }                                      }
      ar[i][i]=1;                           }
    }
                                         for(i=1;i<=n;i++)
  }
                                         {
  for(i=1;i<=n;i++)
  {                                         for(j=1;j<=i;j++)
    for(j=1;j<=i;j++)                       {
    {                                        printf("%u ",ar[i][j]);
      printf("%d ",ar[i][j]);               }
    }                                       printf("n");
    printf("n");
                                         }
  }
                                         printf("P(n,m)? %u",ar[n][m]);
  printf("P(n,m)? %d",ar[n][m]);
  return 0;                             }
}
                                                 *๋นจ๊ฐ„์ƒ‰ : ์ œ๊ฑฐ๋ถ€๋ถ„     *์ดˆ๋ก์ƒ‰ : ๊ฐœ์„ ๋ถ€๋ถ„
                (์œ„ ํ‘œ๋ฅผ ๋ณด๋ฉด ์–ด๋– ํ•œ ๋ถ€๋ถ„์ด ์ œ๊ฑฐ ๋˜์—ˆ๊ณ  ์–ด๋– ํ•œ ๋ถ€๋ถ„์ด ๋ฐ”๋€Œ์—ˆ๋Š”์ง€ ์ž˜ ์•Œ ์ˆ˜ ์žˆ๋‹ค.)
โ€ป ๋ฐœ๊ฒฌ๋œ ๋ฌธ์ œ์ 
์ถœ๋ ฅ๊ฒฐ๊ณผ ///////////////
//////////////////
///////////////
์ด๋ ‡๋“ฏ intํ˜•์ธ ๊ฒฝ์šฐ ๋ณ€์ˆ˜์— ์ €์žฅ๋œ ๊ฐ’์ด 21์–ต์ด ๋„˜์œผ๋ฉด ๊ฐ’์ด -๋กœ ๋‚˜์˜ค๋ฉด์„œ
๊ฐ’์ด ์ž˜๋ ค๋ฒ„๋ฆฌ๋Š” ๋ฌธ์ œ์ ์ด ๋ฐœ์ƒํ•จ. ์ด์— ๋Œ€ํ•ด์„œ๋Š” ๋‹ค์Œ ๋ชจ์ž„๊นŒ์ง€ ์กฐ์‚ฌํ•ด์˜ค๊ธฐ
๋กœ ํ•จ.


์ˆ˜ํ–‰ 4์ผ์ฐจ (3/13 ํ™”)

๊ฐ’์ด ์ž˜๋ฆฌ๋Š” ๋ฌธ์ œ์ ์— ๋Œ€ํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ฐฉ์•ˆ๋“ค์ด ๋‚˜์˜ด.
โ‘  ๋ณ€์ˆ˜ํ˜• __int64 ์“ฐ๋Š”๋ฐฉ๋ฒ•.
โ‘ก ๋ณ€์ˆ˜ํ˜• int ์•ž์— long๋ฅผ ๋ถ™ํ˜€ ์ž๋ฃŒํ˜•์˜ ํฌ๊ธฐ๋ฅผ ๋Š˜์—ฌ์ฃผ๋Š” ๋ฐฉ๋ฒ•.
โ‘ข ์ถœ๋ ฅํ•  ๋•Œ %d ๊ฐ€ ์•„๋‹Œ %u๋ฅผ ์“ฐ๋Š” ๋ฐฉ๋ฒ•.
โ‘ฃ ๋ณ€์ˆ˜ํ˜•์„ double ํ˜•์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๋ฐฉ๋ฒ•.
 #include <stdio.h>                                  #include <stdio.h>
 __int64 ar[1000][1000];                             double ar[1000][1000];
 int n,m;                                            int n,m;

 void main()
                                                     void main()
 {
     int i,j;                                        {
     scanf("%d%d",&n,&m);                             int i,j;
      ar[1][1]=1;                                     scanf("%d%d",&n,&m);
      for(i=2;i<=n;i++)                                  ar[1][1]=1;
      {                                                  for(i=2;i<=n;i++)




                                                 โ‰ซ
         ar[i][1]=1;                                     {
         for(j=2;j<=i;j++)
                                                          ar[i][1]=1;
         {
                                                          for(j=2;j<=i;j++)
             ar[i][j]=ar[i-1][j-1]+ar[i-1][j];
         }                                                {
      }                                                      ar[i][j]=ar[i-1][j-1]+ar[i-1][j];
     for(i=1;i<=n;i++)                                    }
     {                                                   }
      for(j=1;j<=i;j++)                               printf("P(n,m)? %.0lf",ar[n][m]);
      {                                              }
         printf("%.0lf ",ar[i][j]);
      }
      printf("n");
     }
     printf("P(n,m)? %I64d",ar[n][m]);
 }
๊ฐœ์„ ๊ฒฐ๊ณผ

โ‘  ๋ณ€์ˆ˜ํ˜• __int64 ์“ฐ๋Š”๋ฐฉ๋ฒ• :
 -์ด ๊ฒฝ์šฐ์—๋Š” ์žฌ๋Œ€๋กœ๋œ ๊ฐ’์ด ์ข€๋” ๋งŽ์ด ๋‚˜์˜ค๊ธฐ๋Š” ํ–ˆ์ง€๋งŒ ์ข€๋” n์˜ ๊ฐ’์„ ๋†’
์ด๋ฉด -๊ฐ’์ด ์ถœ๋ ฅ๋˜์–ด ๊ฐ’์ด ๊นจ์ ธ๋ฒ„๋ฆผ.




โ‘ก ๋ณ€์ˆ˜ํ˜• int ์•ž์— long๋ฅผ ๋ถ™ํ˜€ ์ž๋ฃŒํ˜•์˜ ํฌ๊ธฐ๋ฅผ ๋Š˜์—ฌ์ฃผ๋Š” ๋ฐฉ๋ฒ•
 -์ด ๊ฒฝ์šฐ๋Š” 1๋ฒˆ๊ณผ ๊ฒฐ๊ณผ๊ฐ€ ๊ฑฐ์˜ ๋™์ผํ•˜์˜€๋‹ค.




โ‘ข ์ถœ๋ ฅํ•  ๋•Œ %d ๊ฐ€ ์•„๋‹Œ %u๋ฅผ ์“ฐ๋Š” ๋ฐฉ๋ฒ•
 -๊ฐ’์ด ์ถœ๋ ฅ๋˜์ง€๋Š” ์•Š์•˜์ง€๋งŒ 10์˜ 10์Šน ์ด์ƒ ๊ฐ’์ด ์ปค์ง€๋ฉด ์ฆ๊ฐ€ํ•˜์ง€ ๋ชปํ•˜์˜€
  ๋‹ค.




โ‘ฃ ๋ณ€์ˆ˜ํ˜•์„ double ํ˜•์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๋ฐฉ๋ฒ•.
 -์•„์ฃผ ํฐ ์ˆซ์ž๊นŒ์ง€ ์ถœ๋ ฅ์ด ๋˜์—ˆ์ง€๋งŒ ์ด๊ฒฝ์šฐ์—๋„ ๋’ท์ž๋ฆฌ๊ฐ€ 0์œผ๋กœ ๋ณ€ํ•˜๋Š” ๋ฌธ
  ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๋‹ค
์ˆ˜ํ–‰ 5์ผ์ฐจ (3/15 ๋ชฉ)
//์ตœ์ข…์†Œ์Šค
#include <stdio.h>
double ar[1000][1000];
double Pas(int n,int m)
{
 int i,j;
 ar[1][1]=1;
 for(i=2;i<=n;i++)
 {
     ar[i][1]=1;
     for(j=2;j<=i;j++)
     {
      ar[i][j]=ar[i-1][j-1]+ar[i-1][j];
     }
 }
 return ar[n][m];
}
void main()
{
int n,m;
double r;
scanf("%d%d",&n,&m);
r= Pas(n,m);
printf("%.0lfn", r);
}


๊ฒฐ๊ณผ ๊ฐ’์„ ์žฌ๋Œ€๋กœ ๋‚ด๊ธฐ์œ„ํ•˜์—ฌ ์กฐํ•ฉ ๊ณ„์‚ฐ(nCr) ๊ณต์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ’์„ ๊ตฌํ•˜๋ ค ํ–ˆ
์œผ๋‚˜ 1000!์„ ๊ณ„์‚ฐํ•  ๊ฒฝ์šฐ์—๋„ ๊ฐ’์˜ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜์„œ ๋ณ€์ˆ˜ํ˜•์˜ ํฌ๊ธฐ๋ฅผ ์ปค์ง€๊ฒŒ ํ•˜
๋Š” ๋ฐฉ๋ฒ• ์™ธ์—๋Š” ๋ฐฉ๋ฒ•์ด ์—†๋‹ค. ๋ผ๋Š” ๊ฒฐ๋ก ์ด ๋‚˜์™”์Šต๋‹ˆ๋‹ค.
์‹œ๊ฐ„๋ณต์žก๋„ ๊ณ„์‚ฐ์— ๊ด€ํ•˜์—ฌ

์‹œ๊ฐ„๋ณต์žก๋„(Time complexity), ๊ณต๊ฐ„๋ณต์žก๋„(Space complexity)
์‹œ๊ฐ„๋ณต์žก๋„. ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‹คํ–‰ํ•˜์—ฌ ์ข…๋ฃŒํ•  ๋•Œ๊นŒ์ง€์˜ ํ•„์š”ํ•œ ์‹œ๊ฐ„
์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ช…๋ น์–ด๋“ค์ด ๋ช‡ ๋ฒˆ์ด๋‚˜ ์‹คํ–‰์ด ๋˜๋Š”์ง€๋ฅผ ์„ผ ๊ฒฐ๊ณผ(frequency count)์— ๊ฐ ๋ช…๋ น์–ด
์˜ ์‹คํ–‰์‹œ๊ฐ„(execution time)์„ ๊ณฑํ•œ ํ•ฉ๊ณ„๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ ๋ช…๋ น์–ด์˜ ์‹คํ–‰์‹œ๊ฐ„์€ ํŠน์ • ํ•˜๋“œ์›จ์–ด ํ˜น์€ ํ”„๋กœ๊ทธ
๋ž˜๋ฐ ์–ธ์–ด์— ๋”ฐ๋ผ์„œ ๊ทธ ๊ฐ’์ด ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์ผ๋ฐ˜์ ์ธ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” ๋ช…๋ น์–ด์˜ ์‹ค์ œ ์‹คํ–‰์‹œ๊ฐ„์„
์ œ์™ธํ•œ ๋ช…๋ น์–ด์˜ ์‹คํ–‰ ํšŸ์ˆ˜๋งŒ์„ ๊ณ ๋ คํ•˜๊ฒŒ ๋œ๋‹ค.
๊ณต๊ฐ„๋ณต์žก๋„. ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‹คํ–‰ํ•˜์—ฌ ์ข…๋ฃŒํ•  ๋•Œ๊นŒ์ง€์˜ ํ•„์š”ํ•œ ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ
์ฃผ์–ด์ง„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‹คํ–‰์‹œํ‚ค๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๊ธฐ์–ต์žฅ์น˜(space)๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋‘
๊ฐ€์ง€๋กœ ๋ถ„๋ฅ˜ํ•ด ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

1.์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๋ฌด๊ด€ํ•œ ๋ถ€๋ถ„             : ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํŠน์„ฑ๊ณผ๋Š” ๋ฌด๊ด€ํ•œ ๋ถ€๋ถ„์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ
์ฝ”๋“œ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๊ณต๊ฐ„, ํ”„๋กœ๊ทธ๋žจ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ
์œ„ํ•ด ์‹œ์Šคํ…œ์ด ํ•„์š”๋กœ ํ•˜๋Š” ๊ณต๊ฐ„ ๋“ฑ์ด ์ด์—
ํฌํ•จ๋œ๋‹ค.

2.์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๋ฐ€์ ‘ํ•œ ๋ถ€๋ถ„             : ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํŠน์„ฑ๊ณผ ๋ฐ€์ ‘ํ•œ ๊ด€๊ณ„๊ฐ€ ์žˆ๋Š” ๋ถ€๋ถ„์œผ๋กœ์„œ
๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”๋กœ ํ•˜๋Š” ๊ณต๊ฐ„์„ ์˜๋ฏธํ•œ๋‹ค.
์ฆ‰, ๋ณ€์ˆ˜๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๊ณต๊ฐ„์ด๋‚˜ ์ˆœํ™˜ ํ”„๋กœ๊ทธ๋žจ์ผ
๊ฒฝ์šฐ ์ˆœํ™˜ ์Šคํƒ(recursion stack) ๋“ฑ์ด ์ด์—
ํฌํ•จ๋œ๋‹ค.
์ผ๋ฐ˜์ ์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ณต๊ฐ„ ๋ณต์žก๋„๋ฅผ ๋ถ„์„ํ• ๋•Œ๋Š” ์œ„์˜ ๋‘๊ฐ€์ง€์ค‘ ๋‘ ๋ฒˆ์งธ์˜ ๊ฒƒ์„ ๊ณ„์‚ฐํ•˜๊ฒŒ ๋œ๋‹ค. ์ฆ‰, ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋ฌธ
์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ์„ ๊ณ„์‚ฐํ•จ์œผ๋กœ์จ ์ฃผ์–ด์ง„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ณต๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ณ„์‚ฐํ•œ๋‹ค.




2์ผ์ฐจ ์†Œ์Šค ์‹œ๊ฐ„,๊ณต๊ฐ„๋ณต์žก๋„                       3์ผ์ฐจ ์ดํ›„ ์†Œ์Šค ์‹œ๊ฐ„,๊ณต๊ฐ„๋ณต์žก๋„
๊ณผ์ œ๋ฅผ ๋งˆ์น˜๋ฉด์„œ....
- C์–ธ์–ด ๊ณต๋ถ€์— ๋Œ€ํ•œ ๋ถ€์กฑํ•จ์„ ๋งŽ์ด ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค. ์•„์ฃผ ํฐ ์ˆซ์ž๋ฅผ ๋‹ด์•„ ์—ฐ์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•˜๋”๋ผ๋ฉด ์ข€ ๋”
์‹ ๋ขฐ์„ฑ์ด ๋†’์€ ์™„๋ฒฝํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ์งค ์ˆ˜ ์žˆ์—ˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

More Related Content

What's hot

์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 4
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 4์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 4
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 4pkok15
ย 
์ด์‚ฐ์ˆ˜ํ•™04
์ด์‚ฐ์ˆ˜ํ•™04์ด์‚ฐ์ˆ˜ํ•™04
์ด์‚ฐ์ˆ˜ํ•™04JeongJunYong
ย 
Tensorflow regression ํ…์„œํ”Œ๋กœ์šฐ ํšŒ๊ท€
Tensorflow regression ํ…์„œํ”Œ๋กœ์šฐ ํšŒ๊ท€Tensorflow regression ํ…์„œํ”Œ๋กœ์šฐ ํšŒ๊ท€
Tensorflow regression ํ…์„œํ”Œ๋กœ์šฐ ํšŒ๊ท€
beom kyun choi
ย 
์ž๊ตฌ2๋ฒˆ
์ž๊ตฌ2๋ฒˆ์ž๊ตฌ2๋ฒˆ
์ž๊ตฌ2๋ฒˆkangseungwoo
ย 
ALS WS์— ๋Œ€ํ•œ แ„‹แ…ตแ„’แ…ข ์ž๋ฃŒ
ALS WS์— ๋Œ€ํ•œ แ„‹แ…ตแ„’แ…ข ์ž๋ฃŒALS WS์— ๋Œ€ํ•œ แ„‹แ…ตแ„’แ…ข ์ž๋ฃŒ
ALS WS์— ๋Œ€ํ•œ แ„‹แ…ตแ„’แ…ข ์ž๋ฃŒbeom kyun choi
ย 
์ด์‚ฐ์น˜4๋ณด๊ณ ์„œ
์ด์‚ฐ์น˜4๋ณด๊ณ ์„œ์ด์‚ฐ์น˜4๋ณด๊ณ ์„œ
์ด์‚ฐ์น˜4๋ณด๊ณ ์„œKimChangHoen
ย 
2012 Ds B2 02 Pdf
2012 Ds B2 02 Pdf2012 Ds B2 02 Pdf
2012 Ds B2 02 Pdfkd19h
ย 
์ด์‚ฐ์น˜7๋ณด๊ณ ์„œ
์ด์‚ฐ์น˜7๋ณด๊ณ ์„œ์ด์‚ฐ์น˜7๋ณด๊ณ ์„œ
์ด์‚ฐ์น˜7๋ณด๊ณ ์„œKimChangHoen
ย 
12 1. multi-dimensional array
12 1. multi-dimensional array12 1. multi-dimensional array
12 1. multi-dimensional array์›…์‹ ์ „
ย 
์Šคํ”Œ๋ ํฌ Machine Learning Integration
์Šคํ”Œ๋ ํฌ Machine Learning Integration์Šคํ”Œ๋ ํฌ Machine Learning Integration
์Šคํ”Œ๋ ํฌ Machine Learning Integration
TIMEGATE
ย 
์˜์ƒ ๋ฐ์ดํ„ฐ์˜ ์ฒ˜๋ฆฌ์™€ ์ •๋ณด์˜ ์ถ”์ถœ
์˜์ƒ ๋ฐ์ดํ„ฐ์˜ ์ฒ˜๋ฆฌ์™€ ์ •๋ณด์˜ ์ถ”์ถœ์˜์ƒ ๋ฐ์ดํ„ฐ์˜ ์ฒ˜๋ฆฌ์™€ ์ •๋ณด์˜ ์ถ”์ถœ
์˜์ƒ ๋ฐ์ดํ„ฐ์˜ ์ฒ˜๋ฆฌ์™€ ์ •๋ณด์˜ ์ถ”์ถœ
๋™์œค ์ด
ย 
2012 Dm A0 04 Pdf
2012 Dm A0 04 Pdf2012 Dm A0 04 Pdf
2012 Dm A0 04 Pdfkd19h
ย 
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ? ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ? ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ? ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ? ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ
Gyooha Kim
ย 
๋ชฉ์ ์ด ๋ถ€์—ฌ๋œ ์—์ด์ „ํŠธ ํ–‰๋™
๋ชฉ์ ์ด ๋ถ€์—ฌ๋œ ์—์ด์ „ํŠธ ํ–‰๋™๋ชฉ์ ์ด ๋ถ€์—ฌ๋œ ์—์ด์ „ํŠธ ํ–‰๋™
๋ชฉ์ ์ด ๋ถ€์—ฌ๋œ ์—์ด์ „ํŠธ ํ–‰๋™Hyosung Jeon
ย 
์ž๋ฃŒ๊ตฌ์กฐ 01 ์ตœ์ข… ๋ณด๊ณ ์„œ
์ž๋ฃŒ๊ตฌ์กฐ 01 ์ตœ์ข… ๋ณด๊ณ ์„œ์ž๋ฃŒ๊ตฌ์กฐ 01 ์ตœ์ข… ๋ณด๊ณ ์„œ
์ž๋ฃŒ๊ตฌ์กฐ 01 ์ตœ์ข… ๋ณด๊ณ ์„œpkok15
ย 
Project#1ํŒŒ์Šค์นผ ์‚ผ๊ฐํ˜•
Project#1ํŒŒ์Šค์นผ ์‚ผ๊ฐํ˜•Project#1ํŒŒ์Šค์นผ ์‚ผ๊ฐํ˜•
Project#1ํŒŒ์Šค์นผ ์‚ผ๊ฐํ˜•Kimjeongmoo
ย 

What's hot (18)

์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 4
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 4์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 4
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 4
ย 
์ด์‚ฐ์ˆ˜ํ•™04
์ด์‚ฐ์ˆ˜ํ•™04์ด์‚ฐ์ˆ˜ํ•™04
์ด์‚ฐ์ˆ˜ํ•™04
ย 
Tensorflow regression ํ…์„œํ”Œ๋กœ์šฐ ํšŒ๊ท€
Tensorflow regression ํ…์„œํ”Œ๋กœ์šฐ ํšŒ๊ท€Tensorflow regression ํ…์„œํ”Œ๋กœ์šฐ ํšŒ๊ท€
Tensorflow regression ํ…์„œํ”Œ๋กœ์šฐ ํšŒ๊ท€
ย 
์ž๊ตฌ2๋ฒˆ
์ž๊ตฌ2๋ฒˆ์ž๊ตฌ2๋ฒˆ
์ž๊ตฌ2๋ฒˆ
ย 
ALS WS์— ๋Œ€ํ•œ แ„‹แ…ตแ„’แ…ข ์ž๋ฃŒ
ALS WS์— ๋Œ€ํ•œ แ„‹แ…ตแ„’แ…ข ์ž๋ฃŒALS WS์— ๋Œ€ํ•œ แ„‹แ…ตแ„’แ…ข ์ž๋ฃŒ
ALS WS์— ๋Œ€ํ•œ แ„‹แ…ตแ„’แ…ข ์ž๋ฃŒ
ย 
์ด์‚ฐ์น˜4๋ณด๊ณ ์„œ
์ด์‚ฐ์น˜4๋ณด๊ณ ์„œ์ด์‚ฐ์น˜4๋ณด๊ณ ์„œ
์ด์‚ฐ์น˜4๋ณด๊ณ ์„œ
ย 
2012 Ds B2 02 Pdf
2012 Ds B2 02 Pdf2012 Ds B2 02 Pdf
2012 Ds B2 02 Pdf
ย 
์ด์‚ฐ์น˜7๋ณด๊ณ ์„œ
์ด์‚ฐ์น˜7๋ณด๊ณ ์„œ์ด์‚ฐ์น˜7๋ณด๊ณ ์„œ
์ด์‚ฐ์น˜7๋ณด๊ณ ์„œ
ย 
12 1. multi-dimensional array
12 1. multi-dimensional array12 1. multi-dimensional array
12 1. multi-dimensional array
ย 
์Šคํ”Œ๋ ํฌ Machine Learning Integration
์Šคํ”Œ๋ ํฌ Machine Learning Integration์Šคํ”Œ๋ ํฌ Machine Learning Integration
์Šคํ”Œ๋ ํฌ Machine Learning Integration
ย 
์˜์ƒ ๋ฐ์ดํ„ฐ์˜ ์ฒ˜๋ฆฌ์™€ ์ •๋ณด์˜ ์ถ”์ถœ
์˜์ƒ ๋ฐ์ดํ„ฐ์˜ ์ฒ˜๋ฆฌ์™€ ์ •๋ณด์˜ ์ถ”์ถœ์˜์ƒ ๋ฐ์ดํ„ฐ์˜ ์ฒ˜๋ฆฌ์™€ ์ •๋ณด์˜ ์ถ”์ถœ
์˜์ƒ ๋ฐ์ดํ„ฐ์˜ ์ฒ˜๋ฆฌ์™€ ์ •๋ณด์˜ ์ถ”์ถœ
ย 
2012 Dm A0 04 Pdf
2012 Dm A0 04 Pdf2012 Dm A0 04 Pdf
2012 Dm A0 04 Pdf
ย 
11. array & pointer
11. array & pointer11. array & pointer
11. array & pointer
ย 
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ? ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ? ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ? ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ
ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ? ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ
ย 
๋ชฉ์ ์ด ๋ถ€์—ฌ๋œ ์—์ด์ „ํŠธ ํ–‰๋™
๋ชฉ์ ์ด ๋ถ€์—ฌ๋œ ์—์ด์ „ํŠธ ํ–‰๋™๋ชฉ์ ์ด ๋ถ€์—ฌ๋œ ์—์ด์ „ํŠธ ํ–‰๋™
๋ชฉ์ ์ด ๋ถ€์—ฌ๋œ ์—์ด์ „ํŠธ ํ–‰๋™
ย 
์ž๋ฃŒ๊ตฌ์กฐ 01 ์ตœ์ข… ๋ณด๊ณ ์„œ
์ž๋ฃŒ๊ตฌ์กฐ 01 ์ตœ์ข… ๋ณด๊ณ ์„œ์ž๋ฃŒ๊ตฌ์กฐ 01 ์ตœ์ข… ๋ณด๊ณ ์„œ
์ž๋ฃŒ๊ตฌ์กฐ 01 ์ตœ์ข… ๋ณด๊ณ ์„œ
ย 
Project#1ํŒŒ์Šค์นผ ์‚ผ๊ฐํ˜•
Project#1ํŒŒ์Šค์นผ ์‚ผ๊ฐํ˜•Project#1ํŒŒ์Šค์นผ ์‚ผ๊ฐํ˜•
Project#1ํŒŒ์Šค์นผ ์‚ผ๊ฐํ˜•
ย 
R_datamining
R_dataminingR_datamining
R_datamining
ย 

Similar to 2012 Ds D0 01 Pdf

์ž๋ฃŒ๊ตฌ์กฐ05
์ž๋ฃŒ๊ตฌ์กฐ05์ž๋ฃŒ๊ตฌ์กฐ05
์ž๋ฃŒ๊ตฌ์กฐ05JeongJunYong
ย 
์ž๋ฃŒ๊ตฌ์กฐ05
์ž๋ฃŒ๊ตฌ์กฐ05์ž๋ฃŒ๊ตฌ์กฐ05
์ž๋ฃŒ๊ตฌ์กฐ05
herojoon1378
ย 
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 5
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 5์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 5
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 5pkok15
ย 
2012 Ds B1 01
2012 Ds B1 012012 Ds B1 01
2012 Ds B1 01seonhyung
ย 
์ด์‚ฐ์น˜2๋ฒˆ
์ด์‚ฐ์น˜2๋ฒˆ์ด์‚ฐ์น˜2๋ฒˆ
์ด์‚ฐ์น˜2๋ฒˆkangseungwoo
ย 
2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdfkd19h
ย 
2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdfjinwookhong
ย 
2012 Dm A0 04 Pdf
2012 Dm A0 04 Pdf2012 Dm A0 04 Pdf
2012 Dm A0 04 Pdfjinwookhong
ย 
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 3
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 3์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 3
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 3pkok15
ย 
์ด์‚ฐ์ˆ˜ํ•™03
์ด์‚ฐ์ˆ˜ํ•™03์ด์‚ฐ์ˆ˜ํ•™03
์ด์‚ฐ์ˆ˜ํ•™03JeongJunYong
ย 
์ด์‚ฐ์น˜1๋ฒˆ
์ด์‚ฐ์น˜1๋ฒˆ์ด์‚ฐ์น˜1๋ฒˆ
์ด์‚ฐ์น˜1๋ฒˆkangseungwoo
ย 
๊ณผ์ œ 1,2,3
๊ณผ์ œ 1,2,3๊ณผ์ œ 1,2,3
๊ณผ์ œ 1,2,3mil23
ย 
5ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ
5ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ5ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ
5ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ
herojoon1378
ย 
Project#5 ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ Hwp
Project#5 ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ HwpProject#5 ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ Hwp
Project#5 ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ HwpKimjeongmoo
ย 
2012 Dm C2 05
2012 Dm C2 052012 Dm C2 05
2012 Dm C2 05seonhyung
ย 
2012 Ds B2 02
2012 Ds B2 022012 Ds B2 02
2012 Ds B2 02chl132435
ย 
์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ
์˜๊ธฐ ๊น€
ย 
3์ฝค๋น„๋„ค์ด์…˜
3์ฝค๋น„๋„ค์ด์…˜3์ฝค๋น„๋„ค์ด์…˜
3์ฝค๋น„๋„ค์ด์…˜
herojoon1378
ย 
Project#3 How Fast Can We Sort Hwp
Project#3 How Fast Can We Sort HwpProject#3 How Fast Can We Sort Hwp
Project#3 How Fast Can We Sort HwpKimjeongmoo
ย 
ํผ์‹œ์Šคํ„ดํŠธ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ - Sogang ICPC Team, 2020 Winter
ํผ์‹œ์Šคํ„ดํŠธ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ - Sogang ICPC Team, 2020 Winterํผ์‹œ์Šคํ„ดํŠธ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ - Sogang ICPC Team, 2020 Winter
ํผ์‹œ์Šคํ„ดํŠธ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ - Sogang ICPC Team, 2020 Winter
Suhyun Park
ย 

Similar to 2012 Ds D0 01 Pdf (20)

์ž๋ฃŒ๊ตฌ์กฐ05
์ž๋ฃŒ๊ตฌ์กฐ05์ž๋ฃŒ๊ตฌ์กฐ05
์ž๋ฃŒ๊ตฌ์กฐ05
ย 
์ž๋ฃŒ๊ตฌ์กฐ05
์ž๋ฃŒ๊ตฌ์กฐ05์ž๋ฃŒ๊ตฌ์กฐ05
์ž๋ฃŒ๊ตฌ์กฐ05
ย 
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 5
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 5์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 5
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 5
ย 
2012 Ds B1 01
2012 Ds B1 012012 Ds B1 01
2012 Ds B1 01
ย 
์ด์‚ฐ์น˜2๋ฒˆ
์ด์‚ฐ์น˜2๋ฒˆ์ด์‚ฐ์น˜2๋ฒˆ
์ด์‚ฐ์น˜2๋ฒˆ
ย 
2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf
ย 
2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf2012 Dm A0 02 Pdf
2012 Dm A0 02 Pdf
ย 
2012 Dm A0 04 Pdf
2012 Dm A0 04 Pdf2012 Dm A0 04 Pdf
2012 Dm A0 04 Pdf
ย 
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 3
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 3์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 3
์ด์‚ฐ์ˆ˜ํ•™ C1 ํ”„๋กœ์ ํŠธ 3
ย 
์ด์‚ฐ์ˆ˜ํ•™03
์ด์‚ฐ์ˆ˜ํ•™03์ด์‚ฐ์ˆ˜ํ•™03
์ด์‚ฐ์ˆ˜ํ•™03
ย 
์ด์‚ฐ์น˜1๋ฒˆ
์ด์‚ฐ์น˜1๋ฒˆ์ด์‚ฐ์น˜1๋ฒˆ
์ด์‚ฐ์น˜1๋ฒˆ
ย 
๊ณผ์ œ 1,2,3
๊ณผ์ œ 1,2,3๊ณผ์ œ 1,2,3
๊ณผ์ œ 1,2,3
ย 
5ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ
5ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ5ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ
5ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ
ย 
Project#5 ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ Hwp
Project#5 ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ HwpProject#5 ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ Hwp
Project#5 ํ†ต์‹ ๋ง์—์„œ ๊ธธ ์ฐพ๊ธฐ Hwp
ย 
2012 Dm C2 05
2012 Dm C2 052012 Dm C2 05
2012 Dm C2 05
ย 
2012 Ds B2 02
2012 Ds B2 022012 Ds B2 02
2012 Ds B2 02
ย 
์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ์ž๋ฃŒ๊ตฌ์กฐ
ย 
3์ฝค๋น„๋„ค์ด์…˜
3์ฝค๋น„๋„ค์ด์…˜3์ฝค๋น„๋„ค์ด์…˜
3์ฝค๋น„๋„ค์ด์…˜
ย 
Project#3 How Fast Can We Sort Hwp
Project#3 How Fast Can We Sort HwpProject#3 How Fast Can We Sort Hwp
Project#3 How Fast Can We Sort Hwp
ย 
ํผ์‹œ์Šคํ„ดํŠธ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ - Sogang ICPC Team, 2020 Winter
ํผ์‹œ์Šคํ„ดํŠธ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ - Sogang ICPC Team, 2020 Winterํผ์‹œ์Šคํ„ดํŠธ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ - Sogang ICPC Team, 2020 Winter
ํผ์‹œ์Šคํ„ดํŠธ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ - Sogang ICPC Team, 2020 Winter
ย 

2012 Ds D0 01 Pdf

  • 1. ํŒ€ ๋ช… D0 ์กฐ์› profile 20093447 : ๊น€๋„ํ˜• 20113311 : ์žฅ๋™๊ทœ 20093489 : ์†กํ•˜์œค 20113324 : ์ตœ์ˆ˜์˜
  • 2. ๊ณผ ์ œ ์ˆ˜ ํ–‰ ์ผ ์ง€ ์ด๋ฆ„: 20์†Œ์† : ์ž๋ฃŒ๊ตฌ์กฐ 01๋ถ„๋ฐ˜ D0์กฐ 093447 ๊น€๋„ํ˜• ,20093489 ์†กํ•˜์œค ,20113324 ์ตœ์ˆ˜์˜ ,20113311 ์žฅ๋™๊ทœ ๊ณผ์ œ์ˆ˜ํ–‰๊ธฐ๊ฐ„: 14์ผ 5๋ฒˆ ๋ชจ์ž„ ์ด 10์‹œ๊ฐ„ I. ๊ณ„ํš์˜ ์ž‘์„ฑ โ‘ ์—ฐ๊ตฌ์ œ๋ชฉ: ํŒŒ์Šค์นผ์˜ ์‚ผ๊ฐํ˜• โ‘ก์—ฐ๊ตฌ๋ฐฐ๊ฒฝ: Array์— ๋Œ€ํ•œ ์ดํ•ด โ‘ข์ฐธ๊ณ ์ž๋ฃŒ: Fundamentals of Data Structures in C ๊ตฌ๊ธ€๊ฒ€์ƒ‰ , ์ฑ…(์—ดํ˜ˆ๊ฐ•์˜ Cํ”„๋กœ๊ทธ๋ž˜๋ฐ) ์‹œ๊ฐ„ ๊ณต๊ฐ„ ๋ณต์žก๋„ ์ฐธ๊ณ : http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040101&docId=68494777&qb =U3BhY2UgY29tcGxleGl0eQ==&enc=utf8&section=kin&rank=3&search_sort=0&sp q=0 II. ๋ชฉ์ฐจ - ์ž„๋ฌด๋ถ„๋‹ด์— ๋Œ€ํ•˜์—ฌ ( 3์ชฝ ) - ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ˆœ์„œ๋„ ( 4์ชฝ ) - ๊ณ„ํš์˜ ์‹คํ–‰ ( 5~10์ชฝ ) - ์‹œ๊ฐ„,๊ณต๊ฐ„ ๋ณต์žก๋„์˜ ๊ณ„์‚ฐ ( 11์ชฝ ) - ๊ณผ์ œ๋ฅผ ๋งˆ์น˜๋ฉด์„œ( ๋งˆ์ง€๋ง‰ ์ชฝ )
  • 3. โ€ป ์ž„๋ฌด ๋ถ„๋‹ด์— ๋Œ€ํ•˜์—ฌ ์กฐ์žฅ : ๊น€๋„ํ˜• ๋ณด๊ณ ์„œ ์ž‘์„ฑ, ์ตœ์ข… ์ข…ํ•ฉ, ํ”„๋กœ๊ทธ๋žจ ์„ค๋ช…์„œ. ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ์žฅ๋™๊ทœ ์ž์—ฐ์‹์˜ ๊ณ„์‚ฐ ์›๋ฆฌ๋ฅผ ํŒŒ์•…ํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€์ž…ํ•˜๋Š” ์—ญํ• . ์ฝ”๋”ฉ : ๊น€๋„ํ˜• ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•˜์—ฌ ๊ตฌ์กฐ ๊ฐœ์„  ๋ฐ ๋ฌธ์ œ์  ํ•ด๊ฒฐ. ์ž๋ฃŒ๊ฒ€ํ†  ๋ฐ ์Šค์ผ€์ค„ : ์†กํ•˜์œค ํ† ๋ก  ๊ณ„ํš ๋ฐ ์Šค์ผ€์ค„ ๊ด€๋ฆฌ ์ค€๋น„๋œ ์ž๋ฃŒ ์žฌ๊ฒ€ํ† . ๊ฒ€์ƒ‰ ๋ฐ ํ† ์˜์ข…ํ•ฉ : ์ตœ์ˆ˜์˜ ํ† ์˜ ํ•œ ๋‚ด์šฉ ๊ธฐ๋ก ๋ฐ ๋ฌธ์ œ ๋ฐ ๊ถ๊ธˆ์  ์กฐ์‚ฌ.
  • 4. โ— ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ˆœ์„œ๋„ (n๊ณผ m์— ๋Œ€ํ•ด์„œ๋Š” ์ž„์˜์˜ ์ˆซ์ž 100๊ณผ 30์„ ๋Œ€์ž…ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜)
  • 5. ์ˆ˜ํ–‰ 1์ผ์ฐจ (3/6 ํ™”) ๊ฐ•์˜์‹œ๊ฐ„์— 4,5๋ช…์”ฉ ์กฐ๋ฅผ ๊ตฌ์„ฑํ•จ. ์กฐ์›๋“ค ๊ฐ๊ฐ์˜ ํฌ์ง€์…˜์„ ์ •ํ•˜๊ณ , ๊ธฐ๋ณธ์ ์ธ ๊ณผ์ œ์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ์œ„ํ•ด ๊ฐ์ž ์ฃผ์ œ(ํŒŒ์Šค์นผ์‚ผ๊ฐํ˜•)์— ๋Œ€ํ•˜ ์—ฌ ์—ฐ๊ตฌํ•˜๊ธฐ๋กœํ•จ. ๋‹ค์Œ ๊ฐ•์˜์‹œ๊ฐ„์ด ๋˜๊ธฐ์ „์— ์กฐ์›๋ผ๋ฆฌ ๋ชจ์—ฌ ๊ณผ์ œ์— ๋Œ€ํ•˜์—ฌ ๋ฏธ๋ฆฌ ํ† ์˜ ํ•˜๊ณ , ์ข…ํ•ฉํ•ด ๋ณด๊ธฐ๋กœ ํ•จ. ์ˆ˜ํ–‰ 2์ผ์ฐจ (3/8 ๋ชฉ) ๊ฐœ์ธ๋ณ„๋กœ ๊ณผ์ œ์— ๋Œ€ํ•˜์—ฌ ์—ฐ๊ตฌ๋ฅผ ํ•˜๊ณ , ๊ธฐ๋ณธ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ œ์‹œํ•˜ ์—ฌ, ๊ฐ€์žฅ ๊ธฐ๋ณธ์ด ๋˜๋Š” ์†Œ์Šค๋ฅผ ๋งŒ๋“ค์—ˆ์Œ. ์†Œ์Šค๋Š” ์ฃผ์–ด์ง„ ์กฐ๊ฑด์„ ๋งŒ์กฑ ํ•˜๋Š” ๋ชจ๋“  ๊ฐ’(n=1000)์„ ์—ฐ์‚ฐํ•˜๊ณ , ๊ทธ ๊ฐ’ P(n,m)์„ ์ž…๋ ฅํ•˜์—ฌ ํ•ด๋‹น ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š” ๊ตฌ์กฐ๋กœ ๋งŒ๋“ค์—ˆ์Œ. ํ•˜์ง€๋งŒ ๊ทธ ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š”๋ฐ ๋งŽ์€ ์‹œ๊ฐ„๊ณผ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฐจ์ง€ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ž„. ์ด ์†Œ์Šค๋ฅผ ๊ฐ„๋‹จํžˆ ํ•˜๊ธฐ์œ„ํ•ด ์žฅ๋™๊ทœ๊ฐ€ ์ˆ˜์ •์„ ํ•˜์˜€๋Š”๋ฐ, n=1000๊ฐ’์„ ๋ชจ๋‘ ์—ฐ์‚ฐํ•˜์ง€์•Š๊ณ , ์ฃผ์–ด์ง€ ๋Š” n๊ฐ’ ๋งŒํผ๋งŒ ์—ฐ์‚ฐํ•˜์—ฌ ์ถœ๋ ฅํ•˜๋„๋ก ํ•˜์˜€์Œ. ๊ทธ ๊ฒฐ๊ณผ ์—ฐ์‚ฐ์— ๋“ค์–ด๊ฐ€ ๋Š” ์‹œ๊ฐ„์ด ๋งŽ์ด ์ค„์–ด๋“ค์—ˆ์Œ.
  • 6. #include <stdio.h> int ar[1000][1000]; #include <stdio.h> int n,m; void main() int ar[1000][1000]; { int n,m; int i,j; scanf("%d%d",&n,&m); void main() if(n>=1) { { int i,j; ar[1][1]=1; ar[1][1]=1; for(i=1;i<=n;i++) { for(i=1;i<=1000;i++) ar[i][1]=1; { for(j=2;j<n;j++) ar[i][1]=1; { โ‰ซ printf("%u ",ar[i][1]); for(j=2;j<=1000;j++) ar[i][j]=ar[i-1][j-1]+ar[i-1][j]; { } ar[i][i]=1; ar[i][j]=ar[i-1][j-1]+ar[i-1][j]; } } printf("%u ",ar[i][j]); for(i=1;i<=n;i++) } { printf("n"); for(j=1;j<=i;j++) } { printf("p(n,m)?"); printf("%u ",ar[i][j]); scanf("%d%d",&n,&m); } printf("n"); printf("P(n,m) = %u",ar[n][m]); } } printf("P(n,m)? %u",ar[n][m]); return 0; } (n=1000๊ฐ’์„ ์—ฐ์‚ฐํ•˜๋Š” ๋ถ€๋ถ„์„ ์ œ๊ฑฐํ•˜๊ณ , n๋งŒํผ์˜ ๊ฐ’๋งŒ ๋ฐ›์•„์„œ ์—ฐ์‚ฐํ•˜๋„๋ก ์ˆ˜์ •.)
  • 7. ์ˆ˜ํ–‰ 3์ผ์ฐจ (3/10 ํ† ) ์žฅ์†Œ : ๋ฉ”์‹ ์ €๋ฅผ ํ†ตํ•˜์—ฌ ์ธํ„ฐ๋„ท ํšŒ์˜ โ€ป ๊ฐœ์„ ์  ์†Œ์Šค๋ฅผ ๋ถ„์„ํ•œ ๊ฒฐ๊ณผ 1ํ–‰์—์„œ๋Š” 1์—ด๋งŒ ์—ฐ์‚ฐํ•˜๋ฉด ๋˜๋Š”๋ฐ, n์—ด๊นŒ์ง€ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์—ฐ์‚ฐ๋Š” ๊ณผ์ • ์ด ์žˆ์Œ. ๊น€๋„ํ˜•์ด ๊ตฌ์กฐ๋ฅผ ๋‹ค์‹œ ํ•œ๋ฒˆ ๊ฐœ์„ ํ•˜์—ฌ ํ–‰์˜ ์ฆ๊ฐ€ํ•œ ์ˆ˜๋งŒํผ ์—ด์„ ๊ณ„์‚ฐํ•˜๋„๋ก ํ•˜์—ฌ ์—ฐ์‚ฐํšŸ์ˆ˜๋ฅผ ์ค„์ด๋Š” ๊ฒƒ์œผ๋กœ ์ˆ˜์ •. ๊ทธ๋ฆฌ๊ณ  ์†Œ์Šค์˜ ๋ถˆํ•„์š”ํ•œ ๋น„๊ต๋ฌธ์ด๋‚˜ ์—ฐ์‚ฐ๋ฌธ๋“ค์ด ์žˆ๋Š” ๋ถ€ ๋ถ„๋„ ์ œ๊ฑฐํ•จ. #include <stdio.h> #include <stdio.h> int ar[1000][1000]; int ar[1000][1000]; int n,m; int n,m; void main() void main() { { int i,j; scanf("%d%d",&n,&m); int i,j; if(n>=1) scanf("%d%d",&n,&m); { ar[1][1]=1; ar[1][1]=1; for(i=2;i<=n;i++) for(i=1;i<=n;i++) { { ar[i][1]=1; ar[i][1]=1; for(j=2;j<=i;j++) for(j=2;j<n;j++) โ‰ซ { { ar[i][j]=ar[i-1][j-1]+ar[i-1][j]; ar[i][j]=ar[i-1][j-1]+ar[i-1][j]; } } ar[i][i]=1; } } for(i=1;i<=n;i++) } { for(i=1;i<=n;i++) { for(j=1;j<=i;j++) for(j=1;j<=i;j++) { { printf("%u ",ar[i][j]); printf("%d ",ar[i][j]); } } printf("n"); printf("n"); } } printf("P(n,m)? %u",ar[n][m]); printf("P(n,m)? %d",ar[n][m]); return 0; } } *๋นจ๊ฐ„์ƒ‰ : ์ œ๊ฑฐ๋ถ€๋ถ„ *์ดˆ๋ก์ƒ‰ : ๊ฐœ์„ ๋ถ€๋ถ„ (์œ„ ํ‘œ๋ฅผ ๋ณด๋ฉด ์–ด๋– ํ•œ ๋ถ€๋ถ„์ด ์ œ๊ฑฐ ๋˜์—ˆ๊ณ  ์–ด๋– ํ•œ ๋ถ€๋ถ„์ด ๋ฐ”๋€Œ์—ˆ๋Š”์ง€ ์ž˜ ์•Œ ์ˆ˜ ์žˆ๋‹ค.)
  • 8. โ€ป ๋ฐœ๊ฒฌ๋œ ๋ฌธ์ œ์  ์ถœ๋ ฅ๊ฒฐ๊ณผ /////////////// ////////////////// /////////////// ์ด๋ ‡๋“ฏ intํ˜•์ธ ๊ฒฝ์šฐ ๋ณ€์ˆ˜์— ์ €์žฅ๋œ ๊ฐ’์ด 21์–ต์ด ๋„˜์œผ๋ฉด ๊ฐ’์ด -๋กœ ๋‚˜์˜ค๋ฉด์„œ ๊ฐ’์ด ์ž˜๋ ค๋ฒ„๋ฆฌ๋Š” ๋ฌธ์ œ์ ์ด ๋ฐœ์ƒํ•จ. ์ด์— ๋Œ€ํ•ด์„œ๋Š” ๋‹ค์Œ ๋ชจ์ž„๊นŒ์ง€ ์กฐ์‚ฌํ•ด์˜ค๊ธฐ ๋กœ ํ•จ. ์ˆ˜ํ–‰ 4์ผ์ฐจ (3/13 ํ™”) ๊ฐ’์ด ์ž˜๋ฆฌ๋Š” ๋ฌธ์ œ์ ์— ๋Œ€ํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ฐฉ์•ˆ๋“ค์ด ๋‚˜์˜ด. โ‘  ๋ณ€์ˆ˜ํ˜• __int64 ์“ฐ๋Š”๋ฐฉ๋ฒ•. โ‘ก ๋ณ€์ˆ˜ํ˜• int ์•ž์— long๋ฅผ ๋ถ™ํ˜€ ์ž๋ฃŒํ˜•์˜ ํฌ๊ธฐ๋ฅผ ๋Š˜์—ฌ์ฃผ๋Š” ๋ฐฉ๋ฒ•. โ‘ข ์ถœ๋ ฅํ•  ๋•Œ %d ๊ฐ€ ์•„๋‹Œ %u๋ฅผ ์“ฐ๋Š” ๋ฐฉ๋ฒ•. โ‘ฃ ๋ณ€์ˆ˜ํ˜•์„ double ํ˜•์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๋ฐฉ๋ฒ•. #include <stdio.h> #include <stdio.h> __int64 ar[1000][1000]; double ar[1000][1000]; int n,m; int n,m; void main() void main() { int i,j; { scanf("%d%d",&n,&m); int i,j; ar[1][1]=1; scanf("%d%d",&n,&m); for(i=2;i<=n;i++) ar[1][1]=1; { for(i=2;i<=n;i++) โ‰ซ ar[i][1]=1; { for(j=2;j<=i;j++) ar[i][1]=1; { for(j=2;j<=i;j++) ar[i][j]=ar[i-1][j-1]+ar[i-1][j]; } { } ar[i][j]=ar[i-1][j-1]+ar[i-1][j]; for(i=1;i<=n;i++) } { } for(j=1;j<=i;j++) printf("P(n,m)? %.0lf",ar[n][m]); { } printf("%.0lf ",ar[i][j]); } printf("n"); } printf("P(n,m)? %I64d",ar[n][m]); }
  • 9. ๊ฐœ์„ ๊ฒฐ๊ณผ โ‘  ๋ณ€์ˆ˜ํ˜• __int64 ์“ฐ๋Š”๋ฐฉ๋ฒ• : -์ด ๊ฒฝ์šฐ์—๋Š” ์žฌ๋Œ€๋กœ๋œ ๊ฐ’์ด ์ข€๋” ๋งŽ์ด ๋‚˜์˜ค๊ธฐ๋Š” ํ–ˆ์ง€๋งŒ ์ข€๋” n์˜ ๊ฐ’์„ ๋†’ ์ด๋ฉด -๊ฐ’์ด ์ถœ๋ ฅ๋˜์–ด ๊ฐ’์ด ๊นจ์ ธ๋ฒ„๋ฆผ. โ‘ก ๋ณ€์ˆ˜ํ˜• int ์•ž์— long๋ฅผ ๋ถ™ํ˜€ ์ž๋ฃŒํ˜•์˜ ํฌ๊ธฐ๋ฅผ ๋Š˜์—ฌ์ฃผ๋Š” ๋ฐฉ๋ฒ• -์ด ๊ฒฝ์šฐ๋Š” 1๋ฒˆ๊ณผ ๊ฒฐ๊ณผ๊ฐ€ ๊ฑฐ์˜ ๋™์ผํ•˜์˜€๋‹ค. โ‘ข ์ถœ๋ ฅํ•  ๋•Œ %d ๊ฐ€ ์•„๋‹Œ %u๋ฅผ ์“ฐ๋Š” ๋ฐฉ๋ฒ• -๊ฐ’์ด ์ถœ๋ ฅ๋˜์ง€๋Š” ์•Š์•˜์ง€๋งŒ 10์˜ 10์Šน ์ด์ƒ ๊ฐ’์ด ์ปค์ง€๋ฉด ์ฆ๊ฐ€ํ•˜์ง€ ๋ชปํ•˜์˜€ ๋‹ค. โ‘ฃ ๋ณ€์ˆ˜ํ˜•์„ double ํ˜•์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๋ฐฉ๋ฒ•. -์•„์ฃผ ํฐ ์ˆซ์ž๊นŒ์ง€ ์ถœ๋ ฅ์ด ๋˜์—ˆ์ง€๋งŒ ์ด๊ฒฝ์šฐ์—๋„ ๋’ท์ž๋ฆฌ๊ฐ€ 0์œผ๋กœ ๋ณ€ํ•˜๋Š” ๋ฌธ ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๋‹ค
  • 10. ์ˆ˜ํ–‰ 5์ผ์ฐจ (3/15 ๋ชฉ) //์ตœ์ข…์†Œ์Šค #include <stdio.h> double ar[1000][1000]; double Pas(int n,int m) { int i,j; ar[1][1]=1; for(i=2;i<=n;i++) { ar[i][1]=1; for(j=2;j<=i;j++) { ar[i][j]=ar[i-1][j-1]+ar[i-1][j]; } } return ar[n][m]; } void main() { int n,m; double r; scanf("%d%d",&n,&m); r= Pas(n,m); printf("%.0lfn", r); } ๊ฒฐ๊ณผ ๊ฐ’์„ ์žฌ๋Œ€๋กœ ๋‚ด๊ธฐ์œ„ํ•˜์—ฌ ์กฐํ•ฉ ๊ณ„์‚ฐ(nCr) ๊ณต์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ’์„ ๊ตฌํ•˜๋ ค ํ–ˆ ์œผ๋‚˜ 1000!์„ ๊ณ„์‚ฐํ•  ๊ฒฝ์šฐ์—๋„ ๊ฐ’์˜ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜์„œ ๋ณ€์ˆ˜ํ˜•์˜ ํฌ๊ธฐ๋ฅผ ์ปค์ง€๊ฒŒ ํ•˜ ๋Š” ๋ฐฉ๋ฒ• ์™ธ์—๋Š” ๋ฐฉ๋ฒ•์ด ์—†๋‹ค. ๋ผ๋Š” ๊ฒฐ๋ก ์ด ๋‚˜์™”์Šต๋‹ˆ๋‹ค.
  • 11. ์‹œ๊ฐ„๋ณต์žก๋„ ๊ณ„์‚ฐ์— ๊ด€ํ•˜์—ฌ ์‹œ๊ฐ„๋ณต์žก๋„(Time complexity), ๊ณต๊ฐ„๋ณต์žก๋„(Space complexity) ์‹œ๊ฐ„๋ณต์žก๋„. ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‹คํ–‰ํ•˜์—ฌ ์ข…๋ฃŒํ•  ๋•Œ๊นŒ์ง€์˜ ํ•„์š”ํ•œ ์‹œ๊ฐ„ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ช…๋ น์–ด๋“ค์ด ๋ช‡ ๋ฒˆ์ด๋‚˜ ์‹คํ–‰์ด ๋˜๋Š”์ง€๋ฅผ ์„ผ ๊ฒฐ๊ณผ(frequency count)์— ๊ฐ ๋ช…๋ น์–ด ์˜ ์‹คํ–‰์‹œ๊ฐ„(execution time)์„ ๊ณฑํ•œ ํ•ฉ๊ณ„๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ ๋ช…๋ น์–ด์˜ ์‹คํ–‰์‹œ๊ฐ„์€ ํŠน์ • ํ•˜๋“œ์›จ์–ด ํ˜น์€ ํ”„๋กœ๊ทธ ๋ž˜๋ฐ ์–ธ์–ด์— ๋”ฐ๋ผ์„œ ๊ทธ ๊ฐ’์ด ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์ผ๋ฐ˜์ ์ธ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” ๋ช…๋ น์–ด์˜ ์‹ค์ œ ์‹คํ–‰์‹œ๊ฐ„์„ ์ œ์™ธํ•œ ๋ช…๋ น์–ด์˜ ์‹คํ–‰ ํšŸ์ˆ˜๋งŒ์„ ๊ณ ๋ คํ•˜๊ฒŒ ๋œ๋‹ค. ๊ณต๊ฐ„๋ณต์žก๋„. ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‹คํ–‰ํ•˜์—ฌ ์ข…๋ฃŒํ•  ๋•Œ๊นŒ์ง€์˜ ํ•„์š”ํ•œ ๋ฉ”๋ชจ๋ฆฌ์˜ ํฌ๊ธฐ ์ฃผ์–ด์ง„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‹คํ–‰์‹œํ‚ค๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๊ธฐ์–ต์žฅ์น˜(space)๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋‘ ๊ฐ€์ง€๋กœ ๋ถ„๋ฅ˜ํ•ด ๋ณผ ์ˆ˜ ์žˆ๋‹ค. 1.์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๋ฌด๊ด€ํ•œ ๋ถ€๋ถ„ : ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํŠน์„ฑ๊ณผ๋Š” ๋ฌด๊ด€ํ•œ ๋ถ€๋ถ„์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๊ณต๊ฐ„, ํ”„๋กœ๊ทธ๋žจ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์‹œ์Šคํ…œ์ด ํ•„์š”๋กœ ํ•˜๋Š” ๊ณต๊ฐ„ ๋“ฑ์ด ์ด์— ํฌํ•จ๋œ๋‹ค. 2.์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ ๋ฐ€์ ‘ํ•œ ๋ถ€๋ถ„ : ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ํŠน์„ฑ๊ณผ ๋ฐ€์ ‘ํ•œ ๊ด€๊ณ„๊ฐ€ ์žˆ๋Š” ๋ถ€๋ถ„์œผ๋กœ์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”๋กœ ํ•˜๋Š” ๊ณต๊ฐ„์„ ์˜๋ฏธํ•œ๋‹ค. ์ฆ‰, ๋ณ€์ˆ˜๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๊ณต๊ฐ„์ด๋‚˜ ์ˆœํ™˜ ํ”„๋กœ๊ทธ๋žจ์ผ ๊ฒฝ์šฐ ์ˆœํ™˜ ์Šคํƒ(recursion stack) ๋“ฑ์ด ์ด์— ํฌํ•จ๋œ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ณต๊ฐ„ ๋ณต์žก๋„๋ฅผ ๋ถ„์„ํ• ๋•Œ๋Š” ์œ„์˜ ๋‘๊ฐ€์ง€์ค‘ ๋‘ ๋ฒˆ์งธ์˜ ๊ฒƒ์„ ๊ณ„์‚ฐํ•˜๊ฒŒ ๋œ๋‹ค. ์ฆ‰, ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋ฌธ ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ์„ ๊ณ„์‚ฐํ•จ์œผ๋กœ์จ ์ฃผ์–ด์ง„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๊ณต๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ณ„์‚ฐํ•œ๋‹ค. 2์ผ์ฐจ ์†Œ์Šค ์‹œ๊ฐ„,๊ณต๊ฐ„๋ณต์žก๋„ 3์ผ์ฐจ ์ดํ›„ ์†Œ์Šค ์‹œ๊ฐ„,๊ณต๊ฐ„๋ณต์žก๋„
  • 12. ๊ณผ์ œ๋ฅผ ๋งˆ์น˜๋ฉด์„œ.... - C์–ธ์–ด ๊ณต๋ถ€์— ๋Œ€ํ•œ ๋ถ€์กฑํ•จ์„ ๋งŽ์ด ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค. ์•„์ฃผ ํฐ ์ˆซ์ž๋ฅผ ๋‹ด์•„ ์—ฐ์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•˜๋”๋ผ๋ฉด ์ข€ ๋” ์‹ ๋ขฐ์„ฑ์ด ๋†’์€ ์™„๋ฒฝํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ์งค ์ˆ˜ ์žˆ์—ˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.