💻 문제 1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" ) func main() { var m, n int r := bufio.NewReader(os.Stdin) w := bufio.NewWriter(os.Stdout) fmt.Fscanln(r, &m, &n) num := make([]bool, n+1) for i := 2; i < n+1; i++ { if num[i] { //값을 초기화하지 않으면 bool형의 기본값은 false continue } for ..
💻 문제 1735번: 분수 합 첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두 개의 자연수가 순서대로 주어진다. 입력되는 네 자연수는 모두 30,000 이하이다. www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" ) func gcd(x, y int) int { if x < y { y, x = x, y } for y != 0 { x, y = y, x%y } return x } func main() { var a, b, c, d, m, g int r := bufio.NewReader(os.Stdin) w := bufio.NewWriter(os.Stdout) defer w.Flush() fmt.Fscanln(r, &a, &b) fmt.Fs..
💻 문제 13241번: 최소공배수 정수 B에 0보다 큰 정수인 N을 곱해 정수 A를 만들 수 있다면, A는 B의 배수이다. 예: 10은 5의 배수이다 (5*2 = 10) 10은 10의 배수이다(10*1 = 10) 6은 1의 배수이다(1*6 = 6) 20은 1, 2, 4,5,10,20의 배수이다. 다 www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" ) func gcd(x, y int) int { if x < y { y, x = x, y } for y != 0 { x, y = y, x%y } return x } func main() { var a, b, g int r := bufio.NewReader(os.Stdin) w := bufio.NewW..
💻 문제 1934번: 최소공배수 두 자연수 A와 B에 대해서, A의 배수이면서 B의 배수인 자연수를 A와 B의 공배수라고 한다. 이런 공배수 중에서 가장 작은 수를 최소공배수라고 한다. 예를 들어, 6과 15의 공배수는 30, 60, 90등이 있 www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" ) func main() { var n int r := bufio.NewReader(os.Stdin) w := bufio.NewWriter(os.Stdout) defer w.Flush() fmt.Fscanln(r, &n) var a []int = make([]int, n) var b []int = make([]int, n) for i := range a..
💻 문제 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" "sort" "strconv" ) func main() { var n int s := bufio.NewScanner(os.Stdin) w := bufio.NewWriter(os.Stdout) defer w.Flush() s.Scan() n, _ = strconv.Atoi(s.Text()) var number []int = make([]int, n) for i := 0; i < n; i++ { ..
💻 문제 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" "sort" ) func main() { var n int r := bufio.NewReader(os.Stdin) w := bufio.NewWriter(os.Stdout) defer w.Flush() fmt.Fscanln(r, &n) var s []string = make([]string, n) for i := 0; i < n; i++ { fmt.Fscanln(..
💻 문제 10815번: 숫자 카드 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" ) func main() { r := bufio.NewReader(os.Stdin) w := bufio.NewWriter(os.Stdout) defer w.Flush() var n int fmt.Fscanln(r, &n) var cards = map[int]int{} for i := 0; i < n; i++ { var input int if i..
💻 문제 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" "sort" ) type userInfo struct { age int name string } func main() { var n int r := bufio.NewReader(os.Stdin) w := bufio.NewWriter(os.Stdout) defer w.Flush() fmt.Fscanln(r, &n) var users = make([]userInfo, n) for i..
💻 문제 1427번: 소트인사이드 첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. www.acmicpc.net 📜 풀이 package main import ( "bufio" "fmt" "os" "strings" ) func change(array []string) { var temp string for i := range array { for j := i; j < len(array); j++ { if array[i] < array[j] { temp = array[i] array[i] = array[j] array[j] = temp } } } } func main() { var s string r := bufio.NewReader(os.Stdin) ..