메뉴 건너뛰기

Programing

Code Up

2748

관리자 2019.12.20 19:24 조회 수 : 9

C++

#include <cstdio>

#include <cstring>

using namespace std;

int N,M;

int dt[25][1000000];

int table[25];

int serch(int i,int n){

    if(i==M){

        if(n==N){

            return 1;

        }

        return 0;

    }

    if(dt[i][n]!=-1)

        return dt[i][n];

 

    return dt[i][n]=serch(i+1,n+table[i])+serch(i+1,n-table[i]);

}

int main()

{

    memset(dt,-1,sizeof(dt));

    scanf("%d %d",&N,&M);

    for(int i=0;i<M;i++){

        scanf("%d",&table[i]);

    }

 

    printf("%d",serch(0,0));

    return 0;

}

번호 제목 글쓴이 날짜 조회 수
공지 안내사항 관리자 2019.12.02 175
172 3703 관리자 2019.12.20 8
171 3701 관리자 2019.12.20 9
170 3520 관리자 2019.12.20 8
169 3120 관리자 2019.12.20 8
168 3023 관리자 2020.04.06 60
167 3022 관리자 2020.04.06 51
166 3021 관리자 2020.04.06 63
165 3009 관리자 2019.12.20 8
164 3008 관리자 2019.12.20 6
163 3007 관리자 2019.12.20 7
162 3006 관리자 2019.12.20 14
» 2748 관리자 2019.12.20 9
160 2657 관리자 2019.12.20 21
159 2652 관리자 2019.12.20 7
158 2641 관리자 2019.12.20 7
157 2634 관리자 2019.12.20 6
156 1953 관리자 2019.12.20 7
155 1936 관리자 2019.12.20 7
154 1925 관리자 2019.12.20 7
153 1525 관리자 2019.12.20 9
152 1505 관리자 2019.12.20 7
151 1476 관리자 2019.12.20 3
150 1162 관리자 2019.12.20 7
149 1161 관리자 2019.12.20 7
148 1160 관리자 2019.12.20 7
147 1159 관리자 2019.12.20 5
146 1158 관리자 2019.12.20 5
145 1157 관리자 2019.12.20 10
144 1156 관리자 2019.12.20 7
143 1155 관리자 2019.12.20 5
위로