문제 N*M크기의 두 행렬 A와 B가 주어졌을 때, 두 행렬을 더하는 프로그램을 작성하시오. 입력 첫째 줄에 행렬의 크기 N과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 차례대로 주어진다. 이어서 N개의 줄에 행렬 B의 원소 M개가 차례대로 주어진다. N과 M은 100보다 작거나 같고, 행렬의 원소는 절댓값이 100보다 작거나 같은 정수이다. 출력 첫째 줄부터 N개의 줄에 행렬 A와 B를 더한 행렬을 출력한다. 행렬의 각 원소는 공백으로 구분한다. 풀이 2차원 좌표계를 다루는 문제이다. 아예 문제 분류가 로 되어있을 정도. 하지만 그런 거 없이 주어진 행렬을 1차원으로 만들어 리스트에 넣어 더한 뒤 출력할 때 다시 2차원으로 매핑해주었다. 이래도 되나..? 싶은 건 보통 차원을 올리..
목차 스택, 큐, 트리, 그래프에 대해선 지난번에 짧게 요약했다. 이번 글에선 자료구조 중 배열 + 컬렉션 프레임워크에 대해 가능한 짧게 요약한다. Array 배열은 한 마디로 말하면 같은 자료형과 길이가 정해진 행렬이라고 할 수 있다. 행렬이기 때문에 인덱스가 정의되어 있고, 메모리를 연속으로 사용할 것을 요구하기 때문에 각각의 값은 변경할 수 있으나 한 번 정해진 크기는 바꿀 수 없다. 또한 엄밀하게 말하면 자바의 배열은 기본적으로 제공하는 자료형이기 때문에 다양한 관련 함수가 정의되어 있으며, 별도의 호출 없이 손쉽게 정의할 수 있다. 배열은 자료형인가? 결론부터 말하자면 자바에서 배열은 자료형이며 동시에 자료구조로도 분류할 수 있다. 자료형은 변수의 타입을 가리키는 단어이며, 자료구조는 데이터의 ..
List → Array List → String[] 문자열 리스트를 문자열 배열로 바꾸는 건 굉장히 간단하다. import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class Example { public static void main(String[] args) { List list = new ArrayList(); list.add("101"); list.add("103"); list.add("107"); String[] arr = list.toArray(new String[list.size()]); System.out.println(Arrays.toString(arr) + ", " + arr.getClass(..
문제 아홉 개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다. 입력 첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다. 출력 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다. 풀이 스트림을 이용해 간단하게 풀어보았다. import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Prob2562St..
indexOf(), lastIndexOf()는 String이나 문자열 배열에서 특정 값의 인덱스를 찾는 메서드이다. 문자열로 된 변수나 배열만 가능한 이유는 java.lang.String 클래스에 속한 메서드기 때문이다. 정확하게는 문자열 배열이 아닌 List로 변환을 해서 사용해야 한다. 정수형으로 사용하고자 한다면 구아바 등의 라이브러리를 쓰는 것도 방법이 될 수 있겠다. 어쨌거나 둘의 차이는 간단하다. indexOf() - 배열(문자열)의 왼쪽부터 탐색, 처음 등장하는 인덱스 반환 lastIndexOf() - 배열(문자열)의 오른쪽부터 탐색, 처음 등장하는 인덱스 반환 사용 예제를 확인하자. import java.util.Arrays; public class Main { public static v..
- Total
- Today
- Yesterday
- RX100M5
- 알고리즘
- 세모
- 여행
- Algorithm
- 기술면접
- 맛집
- 백준
- 자바
- BOJ
- 세계일주
- 동적계획법
- 칼이사
- 지지
- 파이썬
- java
- 스프링
- 세계여행
- 남미
- 면접 준비
- 스트림
- 유럽여행
- 유럽
- Python
- a6000
- 리스트
- 중남미
- Backjoon
- 야경
- spring
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |