티스토리 뷰
문제
10809번: 알파벳 찾기
각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다.
www.acmicpc.net


풀이
package main
import (
"fmt"
"bufio"
"os"
"strconv"
)
func main() {
var s string
reader := bufio.NewReader(os.Stdin)
fmt.Fscanln(reader, &s)
var letters = make(map[int]int)
for i:=0; i<26; i++ {
letters[i+97] = -1
}
for i:=0; i<len(s);i++{
ascii , _ := strconv.Atoi(fmt.Sprintf("%d", s[i]))
if letters[ascii] == -1 {
letters[ascii] = i
}
}
for i:=0; i<26; i++ {
fmt.Printf("%d ", letters[i+97])
}
fmt.Print("\n")
}
728x90
'dev > algorithm' 카테고리의 다른 글
BOJ / 1157번 / 단어 공부 [Golang] (0) | 2020.04.23 |
---|---|
BOJ / 2675번 / 문자열 반복 [Golang] (0) | 2020.04.22 |
BOJ / 11720번 / 숫자의 합 [Golang] (1) | 2020.04.20 |
BOJ / 11654번 / 아스키 코드 [Golang] (0) | 2020.04.19 |
BOJ / 1065번 / 한수 [Golang] (0) | 2020.04.18 |