clamp
Clamp
clamp
글쓰기 관리
전체 방문자
오늘
어제
  • 분류 전체보기 (509)
    • IOS (85)
    • SwiftUI+TCA+Combine (9)
    • RxSwift + MVVM (56)
    • Clean Architecture (12)
    • SWIFT (56)
    • iOS - TDD (2)
    • 디자인패턴 (4)
    • CS (56)
      • 알고리즘 (29)
      • 운영체제 (15)
      • 자료구조 (2)
      • 네트워킹 (4)
      • 기타 (6)
    • 회고 (0)
    • Firebase (18)
    • SwiftUI (10)
    • iOS - UIKit (11)
    • iOS - 오픈소스 (6)
    • 코딩테스트 (166)
      • 프로그래머스 (164)
    • 정보처리기사 (14)
    • GitHub (2)
글쓰기 / 관리자

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Q
  • ㅅ
  • uikit
  • Swift

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
clamp

Clamp

[코딩테스트] - 격자판 회문수(Swift)
코딩테스트

[코딩테스트] - 격자판 회문수(Swift)

2023. 6. 6. 11:55

격자판 회문수

1부터 9까지의 자연수로 채워진 7*7 격자판이 주어지면 격자판 위에서 가로방향 또는 세로방향으로 길이 5자리 회문수가 몇 개 있는지 구하는 프로그램을 작성하세요. 회문수란 121과 같이 앞에서부터 읽으나 뒤에서부터 읽으나 같은 수를 말합니다.

빨간색처럼 구부러진 경우(87178)는 회문수로 간주하지 않습니다.

▣ 입력설명

 1부터 9까지의 자연수로 채워진 7*7격자판이 주어집니다.

 

▣ 출력설명

 5자리 회문수의 개수를 출력합니다.

 

▣ 입력예제 1

2 4 1 5 3 2 6

3 5 1 8 7 1 7

8 3 2 7 1 3 8

6 1 2 3 2 1 1

1 3 1 3 5 3 2

1 1 2 5 6 5 2

1 2 2 2 2 1 5

 

 ▣ 출력예제 1

  3

 

풀이 및 소스코드

var grid = [[Int]]()
var count = 0

for _ in 0..<7 {
    let temp = readLine()!.split(separator: " ").map{ Int($0)! }
    grid.append(temp)
}

// 가로방향 확인
// 가로는 7개가 존재하는데, 5개를 확인하기 때문에 0, 1, 2 를 확인하면 된다.
for row in 0..<7 {
    for col in 0..<3 {
        let subGrid = Array(grid[row][col..<(col + 5)])
        if isPalindrome(array: subGrid){
            count += 1
        }
    }
}

// 세로방향 확인
for row in 0..<3{
    for col in 0..<7{
        var subGrid = [Int]()
        for i in row..<(row + 5){
            subGrid.append(grid[i][col])
        }
        
        if isPalindrome(array: subGrid){
            count += 1
        }
    }
}




func isPalindrome(array: [Int]) -> Bool {
    for i in 0..<(array.count / 2){
        if array[i] != array[array.count - 1 - i]{
            return false
        }
    }
    
    return true
}


print(count)
저작자표시 비영리 동일조건 (새창열림)
    '코딩테스트' 카테고리의 다른 글
    • 카드 역배치
    clamp
    clamp
    주니어 iOS개발자의 발악!!!!!!!

    티스토리툴바