
문제 https://www.acmicpc.net/problem/2745 2745번: 진법 변환 B진법 수 N이 주어진다. 이 수를 10진법으로 바꿔 출력하는 프로그램을 작성하시오. 10진법을 넘어가는 진법은 숫자로 표시할 수 없는 자리가 있다. 이런 경우에는 다음과 같이 알파벳 대문자를 www.acmicpc.net 코드 첫 번째 줄에 N과 B가 주어진다. N은 수, B는 N에 대한 진법이다. 이때 B진법 수 N을 10진법으로 변환하여 출력한다. 2

문제 https://www.acmicpc.net/problem/2563 2563번: 색종이 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 가로, 세로의 길이가 각각 100인 흰색 도화지 안에 가로, 세로의 길이가 각각 10인 정사각형 색종이를 가로 세로가 서로 평행하도록 여러 장 붙였을 때, 색종이의 검은색 영역의 넓이를 구하는 문제다. 코드 첫 번째 줄에 색종이의 개수 n이 주어지고, 이후 줄부터 각 색종이의 왼쪽 아래 모서리의 위치가 주어진다. fun main() { val arr = Array(100) { BooleanArr..

문제 https://www.acmicpc.net/problem/10798 10798번: 세로읽기 총 다섯줄의 입력이 주어진다. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. 주어지는 글자는 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’ www.acmicpc.net 총 다섯 줄의 입력이 주어지며, 각 줄에는 1 ~ 15개의 글자들로 이루어진 문자열이 주어진다. AABCDD afzz 09121 a8EWg6 P5h3kx 이때 세로로 읽은 순서대로 글자들을 출력한다. Aa0aPAf985Bz1EhCz2W3D1gkD6x 코드 fun main() { val arr = Array(5) { CharArray(15) { '@' } } var length = 0 ..

문제 https://www.acmicpc.net/problem/2566 2566번: 최댓값 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다. www.acmicpc.net 코드 9x9 행렬에 쓰인 81개의 숫자가 첫 번째 줄부터 아홉 번째 줄까지 한 줄에 아홉 개의 숫자가 공백(" ")을 기준으로 입력으로 주어진다. 이때 최댓값과 행/열 번호를 출력하는 문제다. 최댓값이 두 개 이상인 경우 한 곳의 위치를 출력한다. fun main() { var max = 0 // 최댓값 var row = 0 // 행 var col = 0 // 열 for (i in 0 until 9) { val..

문제 https://www.acmicpc.net/problem/2738 2738번: 행렬 덧셈 첫째 줄에 행렬의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 차례대로 주어진다. 이어서 N개의 줄에 행렬 B의 원소 M개가 차례대로 주어진다. N과 M은 100보다 작거나 같 www.acmicpc.net 코드 첫 번째 줄에 행렬의 크기 N과 M이 주어지고, 두 번째 줄부터 N개의 줄에 걸쳐 행렬 A의 원소 M개, 이어서 N개의 줄에 걸쳐 B의 원소 M개가 주어진다. 이때 A와 B 두 행렬을 더하여 출력하는 문제다. fun main() { val (n, m) = readln().split(" ").map { it.toInt() } val a = Array(n) { // n * m..

문제 https://www.acmicpc.net/problem/25206 25206번: 너의 평점은 인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다! 치 www.acmicpc.net 코드 총 20줄에 걸쳐 과목명, 학점, 등급이 공백(" ")으로 구분되어 주어진다. 이때 과목의 평균점수를 구하여 출력한다. 전공 평점 = 전공과목별 (학점 * 과목평점)의 합 / 학점의 총합 과목 평점 A+ = 4.5 / A0 = 4.0 / B+ = 3.5 / B0 = 3.0 / C+ = 2.5 / C0 = 2.0 / D+ = 1.5 / D0 = 1.0 / F = 0.0 등급이 P인 과목은 계산..

문제 https://www.acmicpc.net/problem/1316 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 코드 첫 번째 줄에 단어의 개수 n이 주어지고, 두 번째 줄부터 n개의 줄에 단어가 주어질 때, 그룹 단어의 개수를 출력하는 문제다. 모든 문자에 대해서 각 문자가 연속해서 나타나는 경우를 그룹 단어라 한다. 그룹 단어인 경우 : aaabbbccc, abcd 그룹 단어가 아닌 경우 : abab, aaabbbccca fun main() { val n = read..

문제 https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 크로아티아 알파벳 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= 코드 크로아티아 알파벳으로 이루어진 입력 문자열에서 총 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력하는 문제다. fun main() { var input = readln() val croatia = arrayOf("c=", "c-", "dz=", "d-..

문제 https://www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net 코드 알파벳 대소문자로 이루어진 문자열을 입력받아 가장 많이 사용된 알파벳을 출력하는 문제다. 대문자와 소문자를 구분하지 않는다. 가장 많이 사용된 알파벳이 2개 이상인 경우 ?를 출력한다. fun main() { // 사용자로부터 문자열을 입력받고, 모든 알파벳을 대문자로 변환 val input = readln().uppercase(Locale.getDefault()) // 각 알파벳의 등장 횟수를 저장할 배열 초기화 va..

문제 https://www.acmicpc.net/problem/10988 10988번: 팰린드롬인지 확인하기 첫째 줄에 단어가 주어진다. 단어의 길이는 1보다 크거나 같고, 100보다 작거나 같으며, 알파벳 소문자로만 이루어져 있다. www.acmicpc.net 코드 알파벳 소문자로 이루어진 문자열을 입력받아 팰린드롬이면 1, 아니면 0을 출력하는 문제다. 팰린드롬은 단어를 거꾸로 뒤집었을 때도 똑같은 단어를 말한다. fun main() { val input = readln() if (input == input.reversed()) { println(1) } else { println(0) } }