https://www.acmicpc.net/problem/2564
2564번: 경비원
첫째 줄에 블록의 가로의 길이와 세로의 길이가 차례로 주어진다. 둘째 줄에 상점의 개수가 주어진다. 블록의 가로의 길이와 세로의 길이, 상점의 개수는 모두 100이하의 자연수이다. 이어 한 줄
www.acmicpc.net
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int p1[102];
int p2[102];
int p3[102];
int main()
{
int n, x, y;
int sum = 0;
scanf("%d%d", &x,&y);
int r = x*2 + y*2;
scanf("%d", &n);
for (int i = 0; i <= n; i++) {
scanf("%d%d", &p1[i], &p2[i]);
}
for (int i = 0; i <= n; i++) {
if (p1[i] == 1) p3[i] += p2[i];
else if (p1[i] == 2) p3[i] += (r / 2 + (x - p2[i]));
else if (p1[i] == 3) p3[i] += (r - p2[i]);
else if (p1[i] == 4) p3[i] += (x + p2[i]);
}
int l;
for (int i = 0; i < n; i++) {
if (p3[i] > p3[n]) l = p3[i] - p3[n];
else l = p3[n] - p3[i];
if (l > r / 2) l = r - l;
sum += l;
}
printf("%d", sum);
return 0;
}
'알고리즘 > C++' 카테고리의 다른 글
단어수학_백준1339 (0) | 2023.08.29 |
---|---|
이동하기_백준11048 (0) | 2023.08.29 |
창고 다각형_백준2304 (0) | 2023.08.17 |
햄버거분배_백준19941 (0) | 2023.08.17 |
정올_제곱근1240 (0) | 2023.08.14 |