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
- DP
- int
- 문자열
- 정렬
- 이분탐색
- priority_queue
- 티스토리챌린지
- 알고리즘
- 다이나믹프로그래밍
- 백준
- 깊이우선탐색
- stoi
- 백트래킹
- 그래프
- Set
- Sort
- N과M
- 프로그래머스
- 배열
- 오블완
- 에라토스테네스의 체
- 유클리드호제법
- map
- C++
- 최소공배수
- 우선순위큐
- BFS
- DFS
- 분할정복
- vector
Archives
- Today
- Total
안녕 세상아,
[SWEA/c++] 2805. 농작물 수확하기 본문
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
뭐 이런 이상한 규칙이 다 있담..
규칙 생각하는데 한참 걸렸다. 더 간단한 방법도 있겠지만 나는 mid값 기준으로 위 아래로 나눠서 풀었다.
2차원 벡터로 풀었고, 띄어쓰기 없는 숫자의 연속이기 때문에 string으로 값을 받아준 후 하나씩 정수로 분리한 후 벡터에 넣어줬다.
n이 1일 때 고려를 안해줬기 때문에 틀려서 조건문으로 n이 1일 때, 1이 아닐 때 구분해서 풀었다.
#include<iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
int main(int argc, char** argv)
{
int test_case;
int T;
cin >> T;
for (test_case = 1; test_case <= T; ++test_case)
{
int n;
cin >> n;
//2차원 벡터 선언
vector < vector<int>> v(n, vector<int>(n));
for (int i = 0; i < n; i++) {
string str;
cin >> str;
for (int j = 0; j < n; j++) {
v[i][j] = str[j] - '0';
}
}
int mid = n / 2;
int sum = 0;
if (n != 1) {
sum += v[0][mid];
//mid 기준으로 위아래 나눠서 생각하기
for (int i = 1; i < mid; i++) {
for (int j = 1; j <= i; j++) {
sum += v[i][mid - j];
sum += v[i][mid + j];
}
sum += v[i][mid];
}
for (int i = mid; i < n; i++) {
int cnt = mid - i + mid;
for (int j = 1; j <= cnt; j++) {
sum += v[i][mid - j];
sum += v[i][mid + j];
}
sum += v[i][mid];
}
cout <<"#"<<test_case<<" "<< sum << endl;
}
else
{
cout << "#" << test_case << " " << v[0][0] << endl;
}
}
return 0;//정상종료시 반드시 0을 리턴해야합니다.
}
다른 풀이랑 비교해보니까 너무 장황하게 푼듯...문제 푸는 스킬이 그냥 없는듯 ㅜ
'SWEA' 카테고리의 다른 글
[SWEA/c++] 1240. [S/W 문제해결 응용] 1일차 - 단순 2진 암호코드 (0) | 2024.11.08 |
---|---|
[SWEA/c++] 1209. [S/W 문제해결 기본] 2일차 - Sum (1) | 2024.10.18 |
[SWEA/c++] 1208. [S/W 문제해결 기본] 1일차 - Flatten (0) | 2024.10.17 |
[SWEA/c++] 1206. [S/W 문제해결 기본] 1일차 (2) | 2024.10.05 |