Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- c++
- list
- map
- stl
- Array
- 자료구조
- 통계학
- 아두이노 컴파일러
- Deque
- Algorithm
- 운영체제
- html
- Stack
- WinAPI
- arduino compiler
- C언어
- directx
- set
- 시스템프로그래밍
- 아두이노
- queue
- 컴퓨터 그래픽스
- 수광 소자
- 아두이노 소스
- 라인트레이서
- Visual Micro
- LineTracer
- vector
- priority_queue
- Arduino
Archives
- Today
- Total
Kim's Programming
1979. 어디에 단어가 들어갈 수 있을까 본문
1979. 어디에 단어가 들어갈 수 있을까
풀이 방법
<코드>
#include<iostream> using namespace std; int main(int argc, char** argv) { std::ios::sync_with_stdio(false); std::cout.tie(nullptr); std::cin.tie(nullptr); int test_case; int T; cin >> T; for (test_case = 1; test_case <= T; ++test_case) { int nValue{ 0 }, wordLength{ 0 }; std::cin >> nValue >> wordLength; int* dataArray = new int[nValue*nValue]{ 0, }; for (int i = 0; i < nValue; i++) for (int j = 0; j < nValue; j++) std::cin >> dataArray[nValue*i + j]; int answer{ 0 }; for (int i = 0; i < nValue; i++) //Row { int checker{ 0 }; bool prevState = false; for (int j = 0; j < nValue; j++) { if (*(dataArray + (nValue * i) + j) == 1) { prevState = true; checker++; } else prevState = false; if (!prevState || j == nValue - 1) { if (checker == wordLength) answer++; checker = 0; } } } for (int i = 0; i < nValue; i++) //Col { int checker{ 0 }; bool prevState = false; for (int j = 0; j < nValue; j++) { if (*(dataArray + i + (j*nValue)) == 1) { prevState = true; checker++; } else prevState = false; if (!prevState || j == nValue - 1) { if (checker == wordLength) answer++; checker = 0; } } } delete[] dataArray; std::cout << "#" << test_case << " " << answer << "\n"; } return 0;//정상종료시 반드시 0을 리턴해야합니다. }
'SW ExpertAcademy > D2' 카테고리의 다른 글
1984. 중간 평균값 구하기 (0) | 2018.12.01 |
---|---|
1983. 조교의 성적 매기기 (0) | 2018.12.01 |
1976. 시각 덧셈 (0) | 2018.12.01 |
1974. 스도쿠 검증 (0) | 2018.12.01 |
1970. 쉬운 거스름돈 (0) | 2018.12.01 |