본문 바로가기

알고리즘 연습

(7)
[프로그래머스] 숨어있는 숫자의 덧셈(1) - 문자열 숫자로 변환(Integer.parseInt) [문제 설명] 문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요. [제한사항] 1 ≤ my_string의 길이 ≤ 1,000 my_string은 소문자, 대문자 그리고 한자리 자연수로만 구성되어있습니다. [입출력 예] my_string result "aAb1B2cC34oOp" 10 "1a2b3c4d123" 16 입출력 예 #1 "aAb1B2cC34oOp"안의 한자리 자연수는 1, 2, 3, 4 입니다. 따라서 1 + 2 + 3 + 4 = 10 을 return합니다. 입출력 예 #2 "1a2b3c4d123Z"안의 한자리 자연수는 1, 2, 3, 4, 1, 2, 3 입니다. 따라서 1 + 2 + 3 + 4 + 1..
[프로그래머스] 배열의 유사도 (문자열 비교는 equals 이용) [문제] 두 배열이 얼마나 유사한지 확인해보려고 합니다. 문자열 배열 s1과 s2가 주어질 때 같은 원소의 개수를 return하도록 solution 함수를 완성해주세요. [제한사항] 1 ≤ s1, s2의 길이 ≤ 100 1 ≤ s1 s2의 원소의 길이 ≤ 10 s1과 s2의 원소는 알파벳 소문자로만 이루어져 있습니다 s1과 s2는 각각 중복된 원소를 갖지 않습니다. [입출력 예] s1 s2 result ["a", "b", "c"] ["com", "b", "d", "p", "c"] 2 ["n", "omg"] ["m", "dot"] 0 [Solution.java] class Solution { public int solution(String[] s1, String[] s2) { int answer = 0; ..
[프로그래머스] 삼각형의 완성조건(1) [문제] 선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다. (조건) 가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다. 삼각형의 세 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다. 세 변으로 삼각형을 만들 수 있다면 1, 만들 수 없다면 2를 return하도록 solution 함수를 완성해주세요. [입출력 예] sides result [1, 2, 3] 2 [3, 6, 2] 2 [199, 72, 222] 1 [Solution.java] class Solution { public int solution(int[] sides) { // 배열을 순회하면서 크기 비교 후 두 값 교환 (제일 큰 값이 제일 마지막 인덱스로 오도록) // 삼각형의 완성 조건으로 인해..
[백준 JAVA] 2563번 - 색종이 [문제] 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 붙인다. 이러한 방식으로 색종이를 한 장 또는 여러 장 붙인 후 색종이가 붙은 검은 영역의 넓이를 구하는 프로그램을 작성하시오. 예를 들어 흰색 도화지 위에 세 장의 검은색 색종이를 그림과 같은 모양으로 붙였다면 검은색 영역의 넓이는 260이 된다. * 입력 : 첫째 줄에 색종이의 수가 주어진다. 이어 둘째 줄부터 한 줄에 하나씩 색종이를 붙인 위치가 주어진다. 색종이를 붙인 위치는 두 개의 자연수로 주어지는데 첫 번째 자연수는 색종이의 왼쪽 변과 도화지의 왼쪽 변 사이의 거리이고, 두 번째 자연수는 색..
[백준 JAVA] 2738번 - 행렬 덧셈 [문제] N*M크기의 두 행렬 A와 B가 주어졌을 때, 두 행렬을 더하는 프로그램을 작성하시오. * 입력 : 첫째 줄에 행렬의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 차례대로 주어진다. 이어서 N개의 줄에 행렬 B의 원소 M개가 차례대로 주어진다. N과 M은 100보다 작거나 같고, 행렬의 원소는 절댓값이 100보다 작거나 같은 정수이다. * 출력 : 첫째 줄부터 N개의 줄에 행렬 A와 B를 더한 행렬을 출력한다. 행렬의 각 원소는 공백으로 구분한다. [풀이] 1. 입력받을 행렬의 크기를 지정하기 위해 변수 선언 및 입력을 받음 int n = sc.nextInt(); int m = sc.nextInt(); 2. 2개의 행렬을 더하는 것이기 때문에 2개의 행렬을 선언 ..
[백준 JAVA] 2566번- 최댓값 [문제] 아래 그림과 같이 9×9 격자판에 쓰여진 81개의 자연수 또는 0이 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 행 몇 열에 위치한 수인지 구하는 프로그램을 작성하시오. * 입력 : 첫째 줄부터 아홉 번째 줄까지 한 줄에 아홉 개씩 수가 주어진다. 주어지는 수는 100보다 작은 자연수 또는 0이다. * 출력 : 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다. [풀이] 1. 9×9 격자판 안에 숫자를 넣기 위해 9행 9열을 저장할 배열을 선언 int[][] arr = new int[9][9]; 2. 최댓값과 그 행/열의 값을 저장할 배열 혹은 변수 선언 //변수..
[백준] GitHube Repository https://github.com/Khjin06k/Bae-joonHub-.git