프로그래밍16 [투 포인터] 연속된 자연수의 합 구하기 목차1. 풀이(1) 문제연속된 자연수의 합 구하기, 백준 2018 : https://www.acmicpc.net/problem/2018 문제 핵심- 어떤 자연수 N(1 ≤ N ≤ 10,000,000)에 대해서, 이 N을 몇 개의 연속된 자연수의 합- 연속된 자연수 합의 가지 수 (2) 풀이- N의 범위가 매우 크기 때문에 O(n) 이하의 시간복잡도를 가진 알고리즘을 사용해야 한다. * 투 포인터 *- 투 포인터는 말 그대로 두 개의 포인터를 활용한 알고리즘이다.- 이 문제에서는 시작 인덱스와 종료 인덱스 두개의 포인터를 사용한다.- O(n) 시간복잡도를 가진다. (3) 문제 적용 예시변수 선언 및 초기화- 입력받은 값이 5라고 가정한다.- 연속된 자연수의 합은 sum, 가지수는 count 변수로 선언한다.. 2024. 4. 27. 구간의 합 구하기 목차1. 풀이과정1) 문제백준 11659번 구간합구하기 : https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 jwww.acmicpc.net 2) 풀이시간 초과 로직import java.util.Scanner;public class 구간합구하기_시간초과 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); .. 2024. 4. 24. 배열과 리스트 실전문제 목차1. 숫자의 합 구하기1.1 풀이과정1) 문제백준 11720번, 숫자의합 : https://www.acmicpc.net/problem/11720 11720번: 숫자의 합첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.www.acmicpc.net2) 풀이잘못된 로직import java.util.Scanner;public class 숫자의합구하기_1 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); long m =.. 2024. 4. 23. 배열과 리스트 목차 1. 자료구조(Data Structure) 자료구조 자료구조라 함은 컴퓨터 기억공간 내에 자료를 표현하고 조직화하는 방법을 의미한다. 사용하는 데이터 양과 연산, 필요한 기억장치의 양, 원하는 작업에 대한 처리 시간, 데이터의 성격 등을 고려해서 문제에 맞는 적절한 자료구조를 선택해야만 보다 효율적으로 자료를 처리할 수 있다. 좋은 프로그램을 만들려면 자료구조와 알고리즘이 적절한 조화를 이루어야 한다. 2. 배열 배열 배열이란 같은 자료형을 갖는 여러 데이터를 하나의 변수 이름으로 모아 놓은 데이터의 집합이다. 배열의 값은 인덱스를 통해 참조할 수 있으며, 선언한 자료형의 값만 저장할 수 있다. 배열의 특징 인덱스를 사용하여 값에 바로 접근할 수 있다. -> 원소의 논리적 순서와 저장된 물리적 순서.. 2024. 4. 22. 알고리즘 목차 1. 알고리즘 1.1 알고리즘 정의 알고리즘(Algorithm) - 주어진 문제를 풀기 위한 명령어를 단계적으로 나열한 것. 알고리즘 조건 입출력 : 0개 이상의 외부 입력과 하나 이상의 출력이 있어야 한다. 명확성 : 각 명령은 모호하지 않고 단순 명확해야 한다. 유한성 : 한정된 수의 단계를 거친 후에는 반드시 종료해야 한다. 유효성 : 모든 명령은 컴퓨터에서 수행 가능해야 한다. 1.2 알고리즘 분석 알고리즘은 무엇보다 정확하고 효율적인 알고리즘이어야 한다. 따라서 알고리즘의 설계를 마친 후에는 알고리즘이 원하는 결과를 정확히 생성하는 지 확인해야 하며, 또한 해당 알고리즘을 수행하려면 컴퓨터 자원이 얼마나 필요한지를 분석해야 한다. 정확성 분석 정확한 알고리즘이라면 유효한 입력이 주어졌을 때.. 2024. 4. 18. NVM 설치 및 사용 목차 NVM이란? NVM은 'Node Version Manager'의 약자로 Node.js 용 버전 관리자이다. 프로젝트마다 Node.js 버전을 바꿔써야 할 경우 유용한 도구이다. NVM 설치 1. macOS 기준 (1) 깃허브 nvm-sh/nvm 사이트 접속 https://github.com/nvm-sh/nvm GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions - GitHub - n.. 2023. 1. 8. Vue CLI 개발환경 구축 목차 Visual Studio Code 설치 Visual Studio Code 홈페이지에 가서 운영체제에 맞는 파일을 다운받아 설치 https://code.visualstudio.com/Download Download Visual Studio Code - Mac, Linux, Windows Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. Download Visual Studio Code to experience a redefined code editor, optimized for building and debugging modern web and cloud applications. .. 2023. 1. 6. 이전 1 2 다음