728x90
https://swexpertacademy.com/main/solvingProblem/solvingProblem.do
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
for (int tc = 1; tc <= 10; tc++) {
int n = sc.nextInt();
char arr[][] = new char[8][8];
for (int i = 0; i < 8; i++) {
String str = sc.next();
for (int j = 0; j < 8; j++) {
arr[i][j] = str.charAt(j);
}
}
int count = 0;
// 행 검사
for (int i = 0; i < 8; i++) {
for (int j = 0; j <= 8 - n; j++) {
String word = "";
for (int z = 0; z < n; z++) {
word += arr[i][j + z];
}
boolean isExist = isPalindrome(word);
if (isExist) {
count++;
}
}
}
//System.out.println(count);
// 열 검사
for (int i = 0; i < 8; i++) {
for (int j = 0; j <= 8 - n; j++) {
String word = "";
for (int z = 0; z < n; z++) {
word += arr[j+z][i];
}
boolean isExist = isPalindrome(word);
if (isExist) {
count++;
}
}
}
System.out.println("#"+tc+" "+count);
}
}
public static boolean isPalindrome(String word) {
int start = 0;
int end = word.length() - 1;
while (start <= end) {
if (word.charAt(start) != word.charAt(end)) {
return false;
}
start++;
end--;
}
return true;
}
}
행과 열을 나누고 palindrome 함수를 만들어서 해결해주었는데
다른 좋은 방법이 있는지 더 고민해봐야겠다.
728x90
'SW Expert Academy > SWEA D3' 카테고리의 다른 글
| [SW Expert Academy] 준홍이의 카드놀이 (D3) (0) | 2024.08.31 |
|---|---|
| [SW Expert Academy] 코딩 토너먼트1 (D3) (0) | 2024.08.31 |
| [SW Expert Academy] 다양성 측정 (D3) (0) | 2024.08.29 |
| [SW Expert Academy] 민석이의 과제 체크하기 (D3) (0) | 2024.08.29 |
| [SW Expert Academy] Summation (D3) (0) | 2024.08.29 |