Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
Tags
- 백엔드
- CPU 스케줄링
- 코딩애플
- 반효경
- Git
- concurrency control
- 쉬운코드
- 개발남노씨
- 갤럭시 S24
- 운영체제
- SDK
- 프로세스 주소 공간
- 트랜잭션
- 시그널 핸들러
- recoverability
- 온디바이스AI
- B tree 데이터삽입
- 코딩테스트 [ ALL IN ONE ]
- BreadcrumbsComputer-Networking_A-Top-Down-Approach
- 운영체제와 정보기술의 원리
- vite
- 인터럽트
- 김영한
- 커널 동기화
- 시스템프로그래밍
- Extendable hashing
- 데이터베이스
- 네트워크
- 쉬운 코드
- SQL
Archives
- Today
- Total
티끌모아 태산
1236: 성지키기 본문
728x90
https://www.acmicpc.net/problem/1236
1236번: 성 지키기
첫째 줄에 성의 세로 크기 N과 가로 크기 M이 주어진다. N과 M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 성의 상태가 주어진다. 성의 상태는 .은 빈칸, X는 경비원이 있는 칸이다
www.acmicpc.net
핵심 아이디어
각 행과 열마다 X가 들어있지 않는 행, 열의 개수를 구하고 그중 큰 값을 출력해주면 된다.
위 예에서 X가 없는 행은 3개이고 X가 없는 열은 1개이다. 이 중 큰 값을 출력하면 3이 된다.
코드 구현
Python
'''
각 행과 열마다 X가 안들어 있는 행, 열의 개수를 구하고
그 중 큰 값을 출력하면 된다.
'''
n,m = map(int, input().split())
graph = [list(input()) for _ in range(n)]
# for i in graph:
# print(*i)
row = 0
column = 0
# 행 탐색
for i in range(n):
if 'X' not in graph[i]:
row += 1
# 열 탐색
for j in range(m):
if 'X' not in [graph[i][j] for i in range(n)]:
column += 1
print(max(row, column))
C++
#include <iostream>
#include <algorithm>
using namespace std;
int n, m;
char graph[50][50];
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
// 맵의 크기 입력 받기
cin >> n >> m;
// 맵 정보 입력 받기
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
cin >> graph[i][j];
}
}
int row = 0;
int column = 0;
// 행 탐색
for (int i = 0; i < n; i++) {
bool check = true;
for (int j = 0; j < m; j++) {
if (graph[i][j] == 'X') {
// 행에 한개라도 있으면 break
check = false;
break;
}
}
if (check) row += 1;
}
// 열 탐색
for (int j = 0; j < m; j++) {
bool check = true;
for (int i = 0; i < n; i++) {
// 열에 한개라도 경비가 있으면
if (graph[i][j] == 'X') {
check = false;
break;
}
}
if (check) column += 1;
}
// 둘 중에 더 큰 수 출력하기
cout << max(row, column) << "\n";
return 0;
}
728x90
'백준 문제 > 문자열,누적합,구현' 카테고리의 다른 글
11478: 서로 다른 부분 문자열의 개수 (1) | 2024.03.27 |
---|---|
1157: 단어 공부 (0) | 2024.03.26 |
[백 준/구현] 9996: 한국이 그리울 땐 서버에 접속하지 (0) | 2024.02.15 |