class Solution {
public int solution(int[] absolutes, boolean[] signs) {
//부호에 따라 값을 더하고 뺀다.
int answer = 0;
for(int i=0; i<signs.length; i++){
if(signs[i]) answer += absolutes[i];
else answer -= absolutes[i];
}
return answer;
}
}
import java.util.*;
class Solution {
public String solution(String s) {
//공백으로 쪼개고, 숫자로 바꾼 후, 최대 최소값을 찾는다.
String[] arr = s.split(" ");
int[] numbers = new int[arr.length];
for(int i=0; i<arr.length; i++){
numbers[i] = Integer.parseInt(arr[i]);
}
Arrays.sort(numbers);
return numbers[0] + " " + numbers[numbers.length-1];
}
}
class Solution {
public long solution(int price, long money, int count) {
//count만큼 이용했을 때, 부족한 이용료를 구하기
for(int i=1; i<=count; i++){
money -= i*price;
}
return money >= 0? 0 : money*(-1);
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //선언
//표 크기, 계산 횟수 받기
StringTokenizer stringTokenizer = new StringTokenizer(br.readLine());
int n = Integer.parseInt(stringTokenizer.nextToken());
int m = Integer.parseInt(stringTokenizer.nextToken());
//이차원 배열 만들기
int[][] matrix = new int[n+1][n+1];
for(int i=1; i<=n; i++){
stringTokenizer = new StringTokenizer(br.readLine());
for(int j=1; j<=n; j++){
matrix[i][j] = Integer.parseInt(stringTokenizer.nextToken());
}
}
//합 배열 만들기 for 구간 합
int[][] sum = new int[n+1][n+1];
for(int i=1; i<=n; i++){
for(int j=1; j<=n; j++){
sum[i][j] = sum[i][j-1] + sum[i-1][j] - sum[i-1][j-1] + matrix[i][j];
}
}
//정답 배열 만들기
int[] answer = new int[m];
for(int i=0; i<m; i++){
stringTokenizer = new StringTokenizer(br.readLine());
int x1 = Integer.parseInt(stringTokenizer.nextToken());
int y1 = Integer.parseInt(stringTokenizer.nextToken());
int x2 = Integer.parseInt(stringTokenizer.nextToken());
int y2 = Integer.parseInt(stringTokenizer.nextToken());
answer[i] = sum[x2][y2] - sum[x1-1][y2] - sum[x2][y1-1] + sum[x1-1][y1-1];
}
for(int a : answer){
System.out.println(a);
}
}
}
오늘도 코테 봤다.
준비가 되지 않은 상태에서 시험 계속 들이붓기,,★
4문제 중에 한 문제 풀었다.
나머지 3개 중에 하나는 아예 못 풀었고, 두 개는 풀다가 실패.
하나는 수도 코드 작성도 다 하고, 재귀를 사용하는 한 가지 경우만 구현하면 끝나는 거였는데, 재귀를 어떻게 구현해야할지 여전히 모르겠다.
<알고리즘 코딩테스트 자바> 를 띄엄띄엄 보려고 했는데, 처음부터 정독해야겠다.
기초가 부족한 것 같아서...
코테... 대체 언제쯤 감 잡을 수 있는거죠..😇🔫