Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

1R/2016 09 28

From ZeroWiki
Revision as of 05:29, 28 September 2016 by 165.194.27.163 (talk) ({CREATE})
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

오늘의 문제

참가자

  • 15이원준

코드

15이원준

#include<iostream>
 
using namespace std;
 
int main(){
    int arr[46];
    int dp[1001] = { 0, };
    for(int i = 1; i<45; i++){
        arr[i] = (i*(i+1))/2;
    }
    for(int i = 1; i<45; i++){
        for(int j = 1; j<45 && arr[i] + arr[j] <= 1000; j++){
            for(int k = 1;arr[i] + arr[j] + arr[k] <=1000 && k<45; k++){
                dp[arr[i] + arr[j] + arr[k]] = 1;
            }
        }
    }
    int N;
    cin>> N;
    for(int i = 0; i<N; i++){
        int tmp;
        cin>> tmp;
        cout<< dp[tmp] <<endl;
    }
}

박인서

곽정흠

아이디어

15이원준

  • 미리 세개로 만들 수 있는 수를 구해둔 다음 input값의 결과로 출력했습니다.

박인서

곽정흠