Submission

Status:

-----

Subtask/Task Score:

0/100

Score: 0

User: Sense.exe

Problemset: หินงอก

Language: cpp

Time: 0.004 second

Submitted On: 2026-10-02 06:54:16

#include <bits/stdc++.h>
using namespace std;

int main() {
    int day,st,birth;
    cin >> day >> st >> birth;
    int col_b = (st+birth-1)%7;
    if(col_b == 0) {
        col_b = 7;
    }
    int sum=0;
    if(birth-7>=1) {
        sum+=birth-7;
    }
    if(birth+7<=day) {
        sum+=birth+7;
    }
    if(col_b!=7&&birth+1<=day) {
        sum+=birth+1;
    }
    if(col_b!=1&&birth-1>=1) {
        sum+=birth-1;
    }
    cout << sum;
}


// #include <bits/stdc++.h>
// using namespace std;

// int main() {
//     int day,start,birth;
//     cin >> day >> start >> birth;
//     int col_birth = (birth+start-1)%7;
//     if(col_birth==0) {
//         col_birth=7;
//     }
//     int sum=0;
//     //up
//     if(birth-7>=1) {
//         sum+=birth-7; 
//     }
//     //down
//     if(birth+7<=day) {
//         sum+=birth+7; 
//     }
//     //right
//     if((birth+1<=day)&&col_birth!=7) { //ตอนแรก (birth%7!=start) เลยผิด เงื่อนไขเลยกลายเป็นเท็จ
//         sum+=birth+1;
//     }
//     //left
//     if((birth-1>=1)&&col_birth!=1) { //ตอนแรก ((birth)%7!=start+1) เลยผิดเพราะไม่ได้การันตีว่าซ้ายสุด
//         sum+=birth-1;
//     }
//     cout << sum;
// }



//ผิดและซับซ้อนเกิน
// int main() {
//     int day,start,birth,st_loop;
//     cin >> day >> start >> birth;
//     int end = ((start+day)%7)-1;
//     if(start!=1) {  
//         if(start>4) { //คิดเงื่อนไขซับซ้อนเกินไปและไม่ถูกต้องตามหลักปฏิทินจริง
//             st_loop = start-1;
//         }
//         else if(start == 4) {
//             st_loop = 5;
//         }
//         else {
//             st_loop = 7-start;
//         }
//     }
//     else {
//         st_loop = 1;
//     }
//     vector<int> rac;
//     //หา index ของวันเกิด แนวตั้งและนอน
//     int count_r = 0;
//     bool is_first = true;
//     for(int i=st_loop; i<day; i++) {
//         if(i%7==1&&is_first==false) { //ไม่จำเป็นต้องสร้าง Array 2D หรือวนลูปหาพิกัด Row/Column
//             count_r++;
//         }
//         if(i==birth) {
//             rac.push_back(count_r);
//             rac.push_back(); 
//         }
//         is_first=false;
//     }
//     //เอา index มาหาบน ล่าง ซ้าย ขวา
//     for(int i=0; i<)
// }