본문 바로가기

웃음기 있는 글들40

프로그래머스 두 큐 합 같게 만들기(투 포인터) 제목에 큐가 들어가서 큐 문제인 줄 알았는데 .. 예전에 잠깐 스치듯이 공부한 슬라이딩 윈도우 옆에 있던 놈이 문득 생각나서 찾아서 풀어봤다...어제까지 끙끙대다가 포기할까 했는데 저 킹받는 점 세개를 도저히 참을 수 없었다. 투 포인터란?1차원 배열이나 리스트에서 특정 조건을 만족하는 부분을 찾거나, 두 요소 간의 관계를 조사하는 데 사용되는 알고리즘 기법이다.슬라이딩 윈도우와 구분되는 점은, 윈도우 사이즈가 필요에 따라 변할 수 있다.그리고 투 포인터는 양 방향으로 이동이 가능하지만 슬라이딩 윈도우는 한 방향으로밖에 이동하지 못한다.이 문제에서 내가 투 포인터를 쓰고자 한 이유는, 두 개의 1차원 배열을 같은 값으로 만들어야 하기에 queue1과 queue2의 시작방향을 두 포인터의 시작지점으로 설정.. 2024. 11. 13.
9일차 오전: 내 게임 class 나누기하나로 합쳐져 있던 걸 나눠봤다.요랬던게요래됐슴당~https://github.com/roqkfchqh/java_miniGame/tree/feature/002/src java_miniGame/src at feature/002 · roqkfchqh/java_miniGameContribute to roqkfchqh/java_miniGame development by creating an account on GitHub.github.com여담이지만 커밋을 하다가 내 소중한 클래스 파일들이 다 날아갈 뻔 했다. 왜인지도 모르고 어떻게 고친지도 모르겠다. 그냥 로컬 기록에서 파일 가져와서 다시 푸시 하니까 됐다.. 그리고 현재 game.java가 너무 많은 일을 하고 있다.impor.. 2024. 11. 12.
프로그래머스 택배 상자(스택) 최근 java를 공부하면서 stack, queue, list 등의 개념에 대해 처음 알았는데 마침 누가 봐도 스택을 사용할 것 같은 문제가 보여서 풀어봤다.문제#include #include #include #define MAX_SIZE 1000000//스택생성typedef struct Stack{ int data[MAX_SIZE]; int top;} Stack;//스택초기화void initStack(Stack* stack){ stack->top = -1;} //pushvoid push(Stack* stack, int value){ stack->data[++(stack->top)] = value;}//맨위요소int peek(Stack* stack){ return stack.. 2024. 11. 12.
JAVA - 디자인 패턴 정리 1. 생성 패턴 -싱글턴: 특정 클래스의 인스턴스가 단 하나만 존재하도록 제한함. 전역적으로 접근 가능한 인스턴스가 필요할 때 유용.ex) 데이터베이스 연결 객체 등 전역에서 하나만 있어야 하는 경우. -팩토리 메서드: 객체 생성 코드를 서브클래스에서 정의하여, 객체 생성을 하위 클래스에 맡김.ex) 다양한 종류의 버튼이나, 모양을 가지는 UI 요소 생성 시. -추상 팩토리: 관련된 객체들을 그룹화하여 생성할 수 있는 인터페이스 제공. 여러 제품군을 생성해야 할 때 유용.ex) 서로 다른 운영체제에 맞는 UI 요소 생성. (MaxOS Windows) -빌더: 복잡한 객체를 단계별로 생성할 수 있도록 도와줌. 객체를 생성하는 과정, 표현을 분리.ex) 복잡한 레스토랑 주문 구성. 서브웨이처럼 레시피를 조.. 2024. 11. 12.
8일차 오전1: 알고리즘 한문제수능 국어 비문학 푸는 줄 알았다. 문제 자체는 단순구현이라 쉬워보였다#include #include #include #include // survey_len은 배열 survey의 길이입니다.// choices_len은 배열 choices의 길이입니다.// 파라미터로 주어지는 문자열은 const로 주어집니다. 변경하려면 문자열을 복사해서 사용하세요.char* solution(const char* survey[], size_t survey_len, int choices[], size_t choices_len) { // return 값은 malloc 등 동적 할당을 사용해주세요. 할당 길이는 상황에 맞게 변경해주세요. char* answer = (char*)malloc(5).. 2024. 11. 11.
JAVA - 용어 정리<2> 1. 매개변수의 종류 -기본형 매개변수(값에 의한 전달): 기본 데이터 타입(int, double, boolean 등)에서 값을 복사하여 메서드에 전달한다. 메서드 내에서 매개변수 값을 변경해도 원본 값엔 영향이 없다.-참조형 매개변수(참조에 의한 전달): 객체 타입(string, arraylist 등)을 전달할 때는 "값을 주소"가 전달된다. 메서드 내에서 객체의 상태를 변경하면 원래 객체에도 영향을 미친다. 반환 타입도 참조형이 될 수 있다.   2. 지역 변수와 지역 상수 -지역 변수: 메서드 내에서 선언된 변수. 해당 메서드 내에서만 사용 가능, 실행될때마다 독립적인 값을 저장하고 관리하게 된다. 내부에서 정의될 때 생성되어 메서드 종료 시 사라진다.public void exampleMethod(.. 2024. 11. 11.