분류 전체보기

Coding Test

[TIL/10.20] Algorithm: 구현

구현 머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정이다. 이코테 책에서는 완전 탐색, 시뮬레이션 유형을 모두 구현 유형으로 묶어 다룬다. 완전 탐색: 모든 경우의 수를 주저 없이 다 계산하는 해결 방법 시뮬레이션: 문제에서 제시한 알고리즘을 한 단계씩 차례대로 직접 수행하는 것 예제 1 : 상하좌우 문제 여행가 A는 N × N 크기의 정사각형 공간 위에 서 있다. 이 공간은 1 × 1 크기의 정사각형으로 나누어져 있다. 가장 왼쪽 위 좌표는 (1, 1)이며, 가장 오른쪽 아래 좌표는 (N, N)에 해당한다. 여행가 A는 상, 하, 좌, 우 방향으로 이동할 수 있으며, 시작 좌표는 항상 (1, 1)이다. 우리 앞에는 여행가 A가 이동할 계획이 적힌 계획서가 놓여 있다 계획서에는 하나의 줄에 띄어쓰기를 기..

Coding Test

[TIL/10.19] Algorithm: 그리디 알고리즘

그리디 알고리즘 현재 상황에서 지금 당장 좋은 것만 고르는 방법이다. 특징 기준에 따라 좋은 것을 선택하는 알고리즘이므로 문제에서 '가장 큰 순서대로', '가장 작은 순서대로'와 같은 기준을 제시해준다. 대체로 정렬 알고리즘과 짝을 이루어 출제된다. 예제 대표적인 문제로 거스름돈 문제가 있다. 카운터에는 거스름돈으로 사용할 500원, 100원, 50원, 10원짜리 동전이 무한히 존재한다고 가정한다. 손님에게 거슬러 줘야 할 돈이 N원일 때 거슬러줘야 할 동전의 최소 개수를 구하라. 단, 거슬러 줘야 할 돈 N은 항상 10의 배수이다. n = 1260 count = 0 coin_types = [500, 100, 50, 10] for coin in coin_types: count += n // coin # ..

Coding Test

[TIL/10.14] 백준 - 2차원 배열 골라풀기

💛 Python3 코드 백준 2738 ➤ N*M크기의 두 행렬이 주어졌을 때, 두 행렬을 더하기 A, B = [], [] N, M = map(int, input().split()) for row in range(N): row = list(map(int, input().split())) A.append(row) for row in range(N): row = list(map(int, input().split())) B.append(row) for row in range(N): for col in range(M): print(A[row][col] + B[row][col], end=' ') print() 한 행씩 입력을 받으므로, 행의 크기만큼 입력을 반복하여 받는다. 입력 받은 행을 행렬에 삽입한다. 백준..

카테고리 없음

[TIL/10.14] 백준 기초- 문자열 골라풀기

💛 Python3 코드 백준 11720 ➤ 입력된 숫자들의 합 구하기 1) sum함수를 이용 n = input() print(sum(map(int,input()))) 2) for문을 이용 n = input() nums = input() total = 0 for i in nums : total += int(i) print(total) 백준 1152 ➤ 문자열 split해서 리스트에 저장하기 word = input().split() print(len(word)) ⭐️ split으로 띄어쓰기 된 글자마다 잘라주면 word에는 word=["Mammoth", "Coffee"] 이런식으로 리스트가 저장이 된다. 즉, 문자열을 요소로 가지는 리스트가 되는 것이다. 백준 2908 ➤ 문자열 역순으로 바꾸기 num1,..

Coding Test

[TIL/10.14] 백준 기초- 1차원 배열

💛 Python3 코드 백준 10807 n = int(input()) n_list = list(map(int, input().split())) v = int(input()) print(n_list.count(v)) ⭐️ 1차원 배열에서 간단하게 해당 요소가 몇 개 들어있는지 알고싶다면 count() 쓰기. 백준 5597 students = [i for i in range(1,31)] for _ in range(28): applied = int(input()) students.remove(applied) #소거 print(min(students)) print(max(students)) 교실엔 학생이 30명이 있다고 하니깐 1 ~ 30까지 수를 student 리스트에 저장한다. applied 변수에 할당되고..

Coding Test

[TIL/10.14] 백준 기초- 조건문 골라풀기

코테 준비를 처음으로 시작! 일단 백준에서 파이썬 기초 문제집을 골라서 풀고 다시 파이썬에 대한 감을 익힐 예정이다. https://www.acmicpc.net/step 💛 Python3 코드 백준 2884 H, M = map(int, input().split()) if M = 60): min -= 60 hour +..

TroubleShooting

[Linux] /etc/profile can't open file for writing

/etc/profile에 JAVA 환경변수를 설치하던 도중 만난 오류이다. 해결방법1 sudo vi ~ ~ 부분에는 편집하려는 파일을 넣으면 된다! OR 해결방법 2 :w !sudo tee % > /dev/null

TroubleShooting

GitHub Action 빌드 오류: java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate

며칠동안 이 오류 때문에 막혀서 빌드를 못하고 있었는데 생각보다 너무 심플한 이유였기에 공유를 합니다.. 오류 상황 ApplicationTests > contextLoads() FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:143 Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException at ConstructorResolver.java:800 Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException at ConstructorResolver.ja..

TroubleShooting

[SpringBoot] 403 오류와 Expecting a SELECT Query [...], but found org.hibernate.query.sqm.tree.insert.SqmInsertValuesStatement

졸업 프로젝트를 하던 도중 발생한 오류이다. 📌 문제 상황 데이터베이스에 샘플 데이터도 삽입해두었고 SpringBoot 어플리케이션도 정상적으로 Run 되는 상황에 API 테스트를 했는데 403오류가 발생했다. 로그를 확인해보니 다음과 같은 오류가 눈에 띄었다! Expecting a SELECT Query [...], but found org.hibernate.query.sqm.tree.insert.SqmInsertValuesStatement [INSERT INTO SolvedElement (element , isSolved , solvedAt ) VALUES (:element , :isSolved , :solvedAt )] 🖍 원인 이 오류는 Hibernate가 SELECT 쿼리를 기대했지만 INSER..

Compiler

[Compiler] Mac에서 Lex(Lexcial Analyzer Generator) 사용하는 법

컴파일러 수업을 수강하면서 MAC 환경에서 Lex를 사용하는 방법을 몰라 헤맸는데요, 저같은 분들을 위해 짧은 메뉴얼을 쓰게 됐습니다. 도움이 되길 바랍니다 :) Lex란? Lexcial Analyzer Generator로, 규칙에 따라서 input stream으로 들어온 소스 코드를 토큰화합니다. 아래 그림은 Lex를 이용해 토큰화 시키는 과정을 파일 형식과 함께 보여줍니다. 1. flex 설치하기 flex는 Lex의 오픈소스 버전입니다. brew install flex 2. l 파일 작성 후 flex를 이용해 .yy.c 파일 생성 flex test.l 3. gcc 이용해 컴파일 gcc lex.yy.c -ll 4. input 파일로 실행파일 실행 a.out < test.dat

Yeni.Yeni
'분류 전체보기' 카테고리의 글 목록 (3 Page)