BOJ: #1543 - ๋ฌธ์ ๊ฒ์
๋ฌธ์์ด์ ์ธ๋ฑ์ค๋ก ์ ๊ทผํ๊ธฐ ์์ subscript
๋ฅผ ์ต์คํ
์
์ผ๋ก ๊ตฌํํ๋ค. ํน์ ๋ฌธ์์ด์ ๋ฐฐ์ด๋ก ๋ณํํด์ ํ์ด๋ ๋๋ค. ๋๋ ๋ ๊ฐ์ ์ปค์(๋ฌธ์์ด ์ปค์, ํจํด ์ปค์)๋ฅผ ์ด์ฉํด ํ์๋ค.
๋ฌธ์
https://www.acmicpc.net/problem/1543
๋ด๊ฐ ์์ฑํ ์ฝ๋
Swift
extension String {
subscript(offset: Int) -> String {
get {
let index = String.Index(utf16Offset: offset, in: self)
return String(self[index])
}
}
}
let str = readLine()!
let pattern = readLine()!
let n = str.count
let m = pattern.count
var cur = 0 // str cursor
var answer = 0
while cur < n {
var i = 0 // pattern cursor
if str[cur] == pattern[i] {
var isFind = true
while i < m {
if cur + i >= n {
isFind = false
break
}
if str[cur + i] != pattern[i] {
isFind = false
break
}
i += 1
}
if isFind {
cur += i
answer += 1
} else {
cur += 1
}
} else {
cur += 1
}
}
print(answer)
๋ฐ์ํ
๋๊ธ
์ด ๊ธ ๊ณต์ ํ๊ธฐ
-
๊ตฌ๋
ํ๊ธฐ
๊ตฌ๋ ํ๊ธฐ
-
์นด์นด์คํก
์นด์นด์คํก
-
๋ผ์ธ
๋ผ์ธ
-
ํธ์ํฐ
ํธ์ํฐ
-
Facebook
Facebook
-
์นด์นด์ค์คํ ๋ฆฌ
์นด์นด์ค์คํ ๋ฆฌ
-
๋ฐด๋
๋ฐด๋
-
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
๋ค์ด๋ฒ ๋ธ๋ก๊ทธ
-
Pocket
Pocket
-
Evernote
Evernote