๋์ ํ์ด:
1.strings ์ค n๋ฒ์งธ๋ฅผ ์ถ๋ ค๋ธ๋ค.
2.n๋ฒ์จฐ์ ๊ฐ๋ค์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค.
3.n๋ฒ์จฐ์ ๊ฐ๋ค ์ค ์ค๋ณต์ด ์๋ ์ง ํ์ธํ๋ค.
4.์ค๋ณต์ด ์๋ ๊ฐ๋ค์ ๋ด๋๋ค.
5.n๋ฒ์งธ์ ๊ฐ์ด ์ค๋ณต์ด๋ผ๋ฉด strings ์ค n๋ฒ์จฐ๊ฐ ์ค๋ณต์ธ ๊ฒ๋ค์ ์ฐพ์์ ์ฌ์ ์์ผ๋ก ์ ๋ ฌํ ๋ค result์ ๋ฃ์ด์ค๋ค.
6.์ค๋ณต์ด ์๋๋ผ๋ฉด ์ค๋ฆ์ฐจ์ํ ๋ฐฐ์ด์ ๋ฐํ์ผ๋ก strings ์ค n๋ฒ์งธ๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ฌธ์์ด์ ์ฐพ์์ result์ ๋ฃ์ด์ค๋ค.
ํ๋ฉด์๋ ์ด๋ ๊ฒ ํธ๋ ๊ฑด ์๋๊ฑฐ๋ผ๊ณ ์๊ฐํ๋ค. ์ค์ง๊ฒ ๋ณต์กํ๊ฒ ํ์๊ธฐ ๋๋ฌธ์ด๋ค.
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
import Foundation
func solution(_ strings:[String], _ n:Int) -> [String] {
var result = [String]()
var narr = [Character]()
var overlap = [Character:Int]()
let count = 1
var overlapset:Set<Character> = []
var sortoverlap = [String]()
1.strings ์ค n๋ฒ์งธ๋ฅผ ์ถ๋ ค๋ธ๋ค.
narr.append(strings[i].map{$0}[n])
}
2.n๋ฒ์จฐ์ ๊ฐ๋ค์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค.
3.n๋ฒ์จฐ์ ๊ฐ๋ค ์ค ์ค๋ณต์ด ์๋ ์ง ํ์ธํ๋ค.
if overlap[sortnarr[i]] != nil {
overlap[sortnarr[i]] = count + 1
} else{
overlap[sortnarr[i]] = count
}
}
4.์ค๋ณต์ด ์๋ ๊ฐ๋ค์ ๋ด๋๋ค.
if overlap[sortnarr[i]]! > 1 {
}
sortoverlap.removeAll()
5.๋ง์ฝ ์ค๋ณต์ด๋ผ๋ฉด strings ์ค n๋ฒ์จฐ๊ฐ ์ค๋ณต์ธ ๊ฒ๋ค์ ์ฐพ์์ ์ฌ์ ์์ผ๋ก ์ ๋ ฌํ ๋ค result์ ๋ฃ์ด์ค๋ค.
if overlapset.contains(sortdic[i]) {
let c = strings[j].map{$0}
if sortdic[i] == c[n] {
}
}
}
6.๋ง์ฝ ์ค๋ณต์ด ์๋๋ผ๋ฉด ์ค๋ฆ์ฐจ์ํ ๋ฐฐ์ด์ ๋ฐํ์ผ๋ก strings ์ค n๋ฒ์งธ๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ฌธ์์ด์ ์ฐพ์์ result์ ๋ฃ์ด์ค๋ค.
}else{
let c = strings[j].map{$0}
if sortdic[i] == c[n] {
}
}
}
}
return result
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
๋ค๋ฅธ ์ฌ๋ ์ค ๊ฐ์ฅ ์ข๋ค๊ณ ์๊ฐํ๋ ํ์ด
๋น์ฐํ๊ฒ๋ ์์ฃผ ์ฝ๊ฒ ํ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์๋ค. sorted์์ element๋ค์ ์ด์ฉํด ํธ๋๊ฑด๋ฐ sorted๋ ์์์ element 2๊ฐ๋ฅผ ๋ฃ์ด์ฃผ๊ณ ์กฐ๊ฑด์ ๋ฃ์ด์ฃผ๋ฉด ์์์ ์ ๋ ฌํด์ค๋ค.
1.๋ฌธ์์ด์ n๋ฒ์งธ๋ฅผ ์๊ธฐ ์ํด์ index์ ์์น๋ฅผ ์์์ผํ๋๋ฐ ์ด์ฐจํผ ๋ชจ๋ ๋ฌธ์์ด์ n๋ฒ์งธ๋ ๋๊ฐ์ผ๋ฏ๋ก ์์๋ก 0๋ฒ์งธ ๋ฌธ์์ด์ 0๋ฒ์งธ์์ n๋งํผ ๋จ์ด์ง ๊ณณ์ index ์ฆ n๋ฒ์งธ์ index๋ฅผ ์์๋ธ ๋ค
2.result๋ผ๋ ์์๋ฅผ ๋ง๋ค๊ณ strings์ sorted๋ฉ์๋๋ฅผ ์ ์ฉํ ๋ค element์ ๊ฐ ๊ฐ s1,s2๋ฅผ ๋ฃ์ด์ค ๋ค ์กฐ๊ฑด์ s1[index]์ s2[index]๊ฐ ๊ฐ์ ๋ ์ฆ, n๋ฒ์งธ ๋ฌธ์๊ฐ ๊ฐ์ ๋ s1 ๊ณผ s2๋ฅผ ๋น๊ตํด์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํด๋ผ
n๋ฒ์งธ ๋ฌธ์๊ฐ ๊ฐ์ง ์์ ๋๋ s1[index]์ s2[index]๋ฅผ ๋น๊ตํด์ ์ค๋ฆ์ฐจ์์ผ๋ก ๋ฃ์ด๋ผ.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
import Foundation
func solution(_ strings:[String], _ n:Int) -> [String] {
let index = strings[0].index(strings[0].startIndex, offsetBy: n)
if s1[index] == s2[index] {
return s1 < s2
}
else {
return s1[index] < s2[index]
}
})
return result
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
'๐ Problem Solution > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์์ด ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ฐฐ์นํ๊ธฐ Swift (0) | 2020.02.14 |
---|---|
ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์์ด ๋ด p์ y์ ๊ฐ์ Swift (0) | 2020.02.14 |
ํ๋ก๊ทธ๋๋จธ์ค ๋ ์ ์ ์ฌ์ด์ ํฉ Swift (0) | 2020.02.11 |
ํ๋ก๊ทธ๋๋จธ์ค ๋๋์ด ๋จ์ด์ง๋ ์ซ์ ๋ฐฐ์ด Swift (0) | 2020.02.11 |
ํ๋ก๊ทธ๋๋จธ์ค ๊ฐ์ด๋ฐ ๊ธ์ ๊ฐ์ ธ์ค๊ธฐ Swift (0) | 2020.02.09 |
๋๊ธ