제출 #30665

#제출 시각아이디문제언어결과실행 시간메모리
30665jenkhai캥거루 (CEOI16_kangaroo)C++14
6 / 100
2000 ms2020 KiB
#include <bits/stdc++.h>
using namespace std;
const int MOD = 1e9+7;
const int MAXN = 2010;
int N, src, dst;
vector<int> v;
bool ok() {
    if(v[0] != src) return false;
    if(v[N-1] != dst) return false;

    bool ret = true;
    for(int i=0;i<N-1;i++) {
        if(i%2 == 0) {
            if(v[i+1] > v[i]) ret = false;
        } else {
            if(v[i+1] < v[i]) ret = false;
        }
    }
    if(ret == true) return ret;
    ret = true;
    for(int i=0;i<N-1;i++) {
        if(i%2 == 1) {
            if(v[i+1] > v[i]) ret = false;
        } else {
            if(v[i+1] < v[i]) ret = false;
        }
    }
    return ret;
}

void print() {
    for(int i=0;i<N;i++) printf("%d ", v[i]);
    printf("ok:%d\n", ok());
}

int main() {    
    scanf("%d %d %d", &N, &src, &dst); 
    long long ans = 0;
    for(int i=1;i<=N;i++) v.push_back(i);
    do {
        //print();
        if(ok()) ans++;
    } while(next_permutation(v.begin(), v.end()));
    printf("%lld\n", ans);
}

컴파일 시 표준 에러 (stderr) 메시지

kangaroo.cpp: In function 'int main()':
kangaroo.cpp:37:38: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d %d %d", &N, &src, &dst); 
                                      ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...