Submission

Status:

PPPPPPPPPPPPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: ZanTy

Problemset: มุมขวาบน

Language: c

Time: 0.004 second

Submitted On: 2026-10-06 11:17:28

#include<stdio.h>

long long arr[25001];
int main(){
    arr[1] = 7;
    for (int i = 2;i <= 25000;i++){
        arr[i] = arr[i-1] + 2*(2*i-1) + 4*i;
    }
    int target;
    scanf("%d",&target);
    if (target <= 4){
        printf("1");
        return 0;
    }
    int range;
    for (int i = 1;i <= 25000;i++){
        if (target < arr[i] - 2){
            range = arr[i-1];
            break;
        }
        else if (target == arr[i] || target == arr[i]-1 || target == arr[i]-2){
            range = arr[i];
            if (target == range || target == range-1){
                printf("%d",target);
                return 0;
            }
            if (target == range - 2){
                printf("Cannot find top-right corner");
                return 0;
            }
        }
    }
    printf("%d",range);

}