[백준] 1913번 : 달팽이 - C

강재원·2022년 10월 29일
0

[코딩테스트] C/C++

목록 보기
164/200



https://www.acmicpc.net/problem/1913

#include<stdio.h>
#include <string.h> 

int main() {
    int n,m;
    scanf("%d %d",&n,&m);
    int num=n*n;
    int t=0;
    int r=n;
    int arr[n][n];
    int x=0,y=0;
    while(num>0){
        x=t;
        y=t;
        for(int i=y;i<r;i++){
            arr[i][x]=num--;
        }
        y=r-1;
        for(int i=x+1;i<r;i++){
            arr[y][i]=num--;
        }
        x=r-1;
        for(int i=y-1;i>=t;i--){
            arr[i][x]=num--;
        }
        y=t;
        for(int i=x-1;i>t;i--){
            arr[y][i]=num--;
        }
        t++;
        r--;
    }
    int q=0;
    int w=0;
    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            if(arr[i][j]==m){
                q=i+1;
                w=j+1;
            }
            printf("%d ",arr[i][j]);
        }
        printf("\n");
    }
    printf("%d %d",q,w);
}
profile
개념정리 & 문법 정리 & 알고리즘 공부

0개의 댓글