IT개발/코딩테스트 연습5 [프로그래머스] 스택/큐_올바른 괄호 https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수.. 2025. 3. 5. 자바 코딩테스트에서 자주 활용되는 문법과 자료구조 (chatGPT을 통해 정리된 내용입니다.) 1. 기본 문법 및 프로그램 구조1.1. 자바 프로그램의 기본 구조클래스와 메인 메소드:자바 프로그램은 클래스 안에 작성되며, 실행 진입점은 항상 public static void main(String[] args) 메소드입니다.public class Main { public static void main(String[] args) { // 프로그램 시작점 System.out.println("Hello, World!"); }} 패키지:여러 클래스를 그룹으로 관리하기 위해 패키지를 사용합니다.package mypackage;public class MyClass { // 클래스 내용} 1.2. 데이터 타입 및 변수 선언기.. 2025. 2. 7. 2차원 배열 누적합(합배열) 개념 이해하기 (chatGPT를 통해 정리한 내용입니다.) 1. 2차원 배열 누적합(합배열) 개념1.1. 개념 소개누적합(prefix sum): 1차원 배열에서 특정 구간의 합을 빠르게 구하기 위해 미리 구간의 합을 저장해두는 기법을 말합니다.2차원 배열 누적합: 2차원 배열에서 어떤 직사각형 영역(부분행렬)의 합을 빠르게 구하기 위해 미리 **누적합 배열(dp)**을 만들어 두는 방법입니다.1.2. 왜 사용하는가?문제 상황:"N×M 크기의 배열이 주어지고, Q개의 질의(query)가 주어집니다. 각 질의는 (x1, y1)부터 (x2, y2)까지의 부분행렬에 포함된 원소들의 합을 구하는 문제"직접 합산:매 질의마다 해당 영역을 순회하면 시간 복잡도가 O(N×M)이고, Q가 많을 경우 시간 초과가 발생할 수 있습니다.누.. 2025. 2. 7. 합배열 개념 및 예제(코딩테스트/배열/구간합) (뤼튼을 통해 정리된 내용입니다.) 합배열(Prefix Sum Array)은 주어진 배열의 특정 구간의 합을 빠르게 계산하기 위한 기법입니다. 이 기법을 사용하면 배열의 특정 인덱스 구간의 합을 O(1) 시간 복잡도로 계산할 수 있도록 도와줍니다.1. 합배열의 개념합배열은 원래 배열의 각 인덱스까지의 합을 저장한 새로운 배열입니다. 예를 들어, 주어진 배열 arr의 합배열 prefixSum은 다음과 같이 정의됩니다:prefixSum[i] = arr[0] + arr[1] + ... + arr[i]2. 합배열의 공식합배열을 사용하여 주어진 배열의 구간 합을 계산하는 공식은 다음과 같습니다:특정 구간 [l, r]의 합:sum(l, r) = prefixSum[r] - prefixSum[l - 1] (단, l >.. 2025. 2. 6. 백준 1008번 - 자바(java/알고리즘/코딩테스트 연습/연산자) 문제두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.입력첫째 줄에 A와 B가 주어진다. (0 출력첫째 줄에 A/B를 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10-9 이하이면 정답이다.예제 입력 11 3예제 출력 1 0.3333333333333333333333333333333310-9 이하의 오차를 허용한다는 말은 꼭 소수 9번째 자리까지만 출력하라는 뜻이 아니다.예제 입력 2 4 5예제 출력 2 0.8 답import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); double a=.. 2024. 12. 4. 이전 1 다음