Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: sulinx

Problemset: เลขดวง

Language: cpp

Time: 0.002 second

Submitted On: 2025-10-20 23:17:36

#include <bits/stdc++.h>

using namespace std;

int main(){
    int d, day, birth;
    cin >> d >> day >> birth;
    
    int rows = ((day + d - 1) > 35) ? 6 : 5;
    int calen[6][7] = {0};
    
    int dc = 1;
    int n = -1, m = -1;
    
    for(int i = 0; i < rows; i++){
        for(int j = 0; j < 7; j++){
            if((j < day - 1 && i == 0) || (dc > d)){
                calen[i][j] = 0;
            } else {
                if(dc == birth){
                    n = i;
                    m = j;
                }
                calen[i][j] = dc;
                dc++;
            }
        }
    }

    int lucky = 0;
    
    if(m - 1 >= 0){
        lucky += calen[n][m - 1];
    }
    
    if(m + 1 < 7){
        lucky += calen[n][m + 1];
    }
    
    if(n - 1 >= 0){
        lucky += calen[n - 1][m];
    }
    
    if(n + 1 < rows){
        lucky += calen[n + 1][m];
    }
    
    cout << lucky;
    
    return 0;
}