
제가 다음과 같이 코드를 짰는데요 (오답이지만 정답으로 처리되었기에 코드를 공개합니다)
아래 코드는 100점만점으로 채점되었습니다
그런데 만약에, 색종이의 x좌표가 0일 때의 좌표가 주어진다면 이 코드로는 오답을 반드시 내게되어있습니다.
(p,q에 0이 들어가는데, 마지막에 배열이 1이 있는지 검사를 할 때는 arr[0][?], arr[?][0]을 보지 않습니다.)
따라서 x좌표가 0인 채점데이터를 반드시 넣으셔야 한다고 생각합니다...
아 그리고 저는 배열을 오른쪽으로 한칸 밀리게 해서 코드를 짰지만
그 반대로 배열을 왼쪽으로 한칸 밀리게 해서 코드를 짠 사람도 있을 것입니다.
그래서x좌표가 90인 데이터도 반드시 넣으셔야 한다고 생각합니다..
아 그리고 y좌표, 즉 위아래로 한칸 밀리게 해서 코드를 짠 사람도 있을 것입니다.
y좌표가 0,90인 채점데이터도 넣어야겠죠..
재채점 부탁드립니다! 혹시 제 생각이 잘못되었다면 말씀해주세요
#include <stdio.h>
#include <stdlib.h>
int arr[101][101]; //1~100까지만 사용
int sum;
int main()
{
int n;
int i;
register int j,k;
int p, q;
scanf("%d", &n);
for(i=0; i<n; i++)
{
scanf("%d", &p);
scanf("%d", &q);
for(j=0; j<10; j++)
for(k=0; k<10; k++)
{
arr[p+k][q+j]=1;
}
}
for(i=1; i<=100; i++)
for(j=1; j<=100; j++)
{
if(arr[i][j]==1)
sum++;
}
printf("%d", sum);
return 0;
}