iamkdh의 등록된 링크

키자드에 등록된 총 131개의 포스트를 확인하실 수 있습니다.

Tistory

백준 - 11399번 ATM(Greedy, Silver4, Python)

문제 인하은행에는 ATM이 1대밖에 없다. 지금 이 ATM앞에 N명의 사람들이 줄을 서있다. 사람은 1번부터 N번까지 번호가 매겨져 있으며, i번 사람이 돈을 인출하는데 걸리는 시간은 Pi분이다. 사람들이 줄을 서는..

Tistory

백준 - 1543번 문서검색(Bruteforce, Silver 4, Python)

문제 세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한다. 예를 들어..

Tistory

백준 - 3077번 임진왜란 (Bruteforce, Silver 3, python)

문제 현우는 방금 선생님으로부터 역사 시험 결과를 받았다. 현우가 가장 열심히 공부한 문제는 임진왜란의 해전을 일어난 순서대로 적는 문제이다. 올바른 순서는 다음과 같다. 옥포 해전 2. 사천 해전 3. 한산도..

Tistory

백준 - 11558번 The Game of Death (Graph, Silver4, Python)

문제 희현이와 주경이는 The Game of Death를 좋아한다. The Game of Death 규칙: 플레이어는 각자 한 명씩 지목을 한다(자신도 가능). 처음 시작하는 사람은 임의의 자연수 K를 말한다. 시작한 사람부터 지목한..

Tistory

백준 - 1929번 소수 구하기(PrimeNumber Silver3, Java)

문제 M이상 N이하의 소수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어..

Tistory

프로그래머스 - 최대공약수와 최소공배수 (Level1, Java)

문제 설명 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요. 배열의 맨 앞에 최대공약수, 그다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 두 수 3, 12의 최..

Tistory

Java-Algorithm 입출력 성능최적화, 괜찮은 기능 메모

BufferedReader - 1 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String inputValue = br.readeLine(); 한 줄에 해당하는 문자열 입력받을 수 있다. BufferedReader 사용하는 메..

Tistory

Programmers Level 1. 2018 KAKAO BLIND RECRUITMENT 비밀지도 (Python)

문제 설명 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도..

Tistory

Programmers Level 1. 2022 KAKAO BLIND RECRUITMENT 신고 결과 받기 (Python)

문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 유저를 신고할 수..

Tistory

Programmers Level 1. 2021 KAKAO BLIND RECRUITMENT 신규 아이디 추천 (Python)

문제 설명 카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는..

Tistory

Programmers Level 1. 2019 KAKAO BLIND RECRUITMENT 실패율 (Python)

문제 설명 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차..

Tistory

백준 - 1026번 보물(Greedy, Silver4, Python)

문제 옛날 옛적에 수학이 항상 큰 골칫거리였던 나라가 있었다. 이 나라의 국왕 김지민은 다음과 같은 문제를 내고 큰 상금을 걸었다. 길이가 N인 정수 배열 A와 B가 있다. 다음과 같이 함수 S를 정의하자. S = A[..

Tistory

백준 - 1931번 회의실 배정(Greedy, Silver1, Python)

문제 한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실 사용표를 만들려고 한다. 각 회의 I에 대해 시작시간과 끝나는 시간이 주어져 있고, 각 회의가 겹치지 않게 하면서 회의실을 사용..

Tistory

백준 - 10610번 30(Greedy, Silver4, Python)

문제 어느 날, 미르코는 우연히 길거리에서 양수 N을 보았다. 미르코는 30이란 수를 존경하기 때문에, 그는 길거리에서 찾은 수에 포함된 숫자들을 섞어 30의 배수가 되는 가장 큰 수를 만들고 싶어한다. 미르코를..

Tistory

백준 - 3273번 두 수의 합(Sort, Silver 3, Python)

문제 n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족..

Tistory

백준 - 11654번 좌표 정렬하기(Sort, Silver 5, Python)

문제 2차원 평면 위의 점 N개가 주어진다. 좌표를 y좌표가 증가하는 순으로, y좌표가 같으면 x좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,0..

Tistory

백준 - 11724번 연결 요소의 갯수(Graph, Silver2, Python)

문제 방향 없는 그래프가 주어졌을 때, 연결 요소 (Connected Component)의 개수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N..

Tistory

백준 - 9372번 상근이의 여행(Graph, Silver4, Python)

문제 상근이는 겨울방학을 맞아 N개국을 여행하면서 자아를 찾기로 마음먹었다. 하지만 상근이는 새로운 비행기를 무서워하기 때문에, 최대한 적은 종류의 비행기를 타고 국가들을 이동하려고 한다. 이번 방학 동..

Tistory

백준 - 9711번 피보나치(DynamicProgramming, Silver3, Python)

문제 피보나치 수열은 아래와 같이 표현된다. 1, 1, 2, 3, 5, 8, 13, 21, 34, ... 각 숫자는 앞의 두 숫자의 합으로 나타내는 것을 알 수 있다. P와 Q 그리고 n이 주어질 때, P번째 피보나치 숫자를 Q로 나눈 나머..

Tistory

백준 - 2579번 계단오르기(DynamicProgramming, Silver3, Python)

문제 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. <그림 1>과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점수를 얻게 된..

Tistory

백준 - 1003번 피보나치 함수(DynamicProgramming, Silver3, Python)

문제 다음 소스는 N번째 피보나치 수를 구하는 C++ 함수이다. int fibonacci(int n) { if (n == 0) { printf("0"); return 0; } else if (n == 1) { printf("1"); return 1; } else { return fibonacci(n‐1) + fi..

Tistory

OOP 특징들을 Java 코드로 (OOP in Java)

OOP(Object Oriented Programming) 절차적 프로그래밍은 데이터에 대한 작업을 수행하는 절차나 메서드를 작성하는 것이고 객체 지향 프로그래밍은 데이터와 메서드를 모두 포함하는 객체를 만드는 것이다. 객체지..

Tistory

Exception Controll In Java

Step 02. 예외 처리 기본 - NullPointerException 그리고 StackTrace Situation1. 예외처리를 하지 않았을 때 public class ExceptionHandling { public static void main(String[] args) { method1(); System.out..

Tistory

Spring - Update 영속성 컨텍스트 (+Spring Data JPA)

Spring Data JPA를 사용하여 유저의 관한 CRUD 연산을 수행해보았다. UserRepository.java import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Modi..

Tistory

Spring 프로젝트 배포 중 Application.yml 에 관하여

Application.yml 은 깃허브나 외부로 절대 유출되어서는 안되는 파일이다. 따라서 배포를 위해서는 .gitignore를 통해 깃허브에 커밋되지 않도록 하는 것이 기본이다. application.yml .gitignore 적용법 1. 위..

Tistory

JDBC - JPA - Spring Data JPA 간단 비교

JDBC Connection, Close 및 SQL을 직접 삽입해주어야함 Connection을 안끊으면 Connection이 계속 쌓여서 장애가 남 JPA JPA = ORM 객체와 릴레이션을 연결해줌 @Id @GeneratedValue(Identity) 등의 어노테이션 활..

Tistory

AOP in Spring

AOP가 필요한 상황 모든 메소드의 호출 시간을 측정하고 싶을 때 공통 관심사항 vs 핵심 관심사항 회원 가입 시간, 회원 조회 시간을 측정하고 싶을때 문제 1. 회원가입에서 시간을 측정하는 기능은 핵심 관심 사..

Tistory

JVM 구조, JVM 메모리 구조

JVM JVM 이란? Java Code 나 Application 을 실행시키기 위한 런타임 환경을 제공해주는 엔진이다. Java 코드를 ByteCode 로 변환해준다. JVM 은 Java Runtime Environment(JRE)의 일부이다. 다른 언어의 컴파일러..

Tistory

Garbage Collection In Java

Garbage Collection Garbage Collection 이란? Java 프로그램에서, 자동으로 메모리를 관리해주는 과정이다. C/C++ 와 달리, 프로그래머는 객체의 메모리 할당과 해제를 신경 쓸 필요가 없다. Garbage Collection..

Tistory

Generic In Java

Step 01. 제네릭 소개 - 제네릭은 왜 필요한가? 제네릭을 사용하지 않을 때 MyCustomList.java public class MyCustomList { public void addElement(T element) { list.add(element); } } 위와 같은 메서드를 사..

Tistory

JIT Compiler

[ JIT Compiler 란? ] JAVA 의 성능을 증대시키기 위한 런타임 환경의 요소이다. 런타임 중, 바이트 코드를 기계어 코드로 컴파일 해준다. [ JIT Compiler 개요 ] 개요 1. JAVA 프로그램은 다양한 컴퓨터 구조(OS)..

Tistory

JAVA final 키워드

final 변수 상수로써 사용된다. 변수를 선언과 동시에 초기화하며 이후에 값을 수정할 수 있다. Get 만 가능하다 (Set 불가) final 메서드 오버라이딩 불가능 상속받은 그대로 사용 final 클래스 상속 불가 Subcla..

Tistory

JAVA : Collection Framework

컬렉션 프레임워크란 Stack, Queue, Map 등 널리 알려진 자료구조를 바탕으로 객체나 데이터를 효율적으로 관리할 수 있는 기능을 구현해놓은 라이브러리 이 글에선, 대표적으로 List, Map 을 다룬다 List [ 개요..

Tistory

Programmers Level 1 : 완주하지 못한 선수 (Java)

문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이..

Tistory

Programmers Level 2 : 전화번호 목록 (Java)

문제 설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119..

Tistory

Github 이미 수행된 커밋에서 특정 파일 제거

git filter-branch -f --index-filter "git rm --cached --ignore-unmatch 삭제하고자하는 file명" --prune-empty -- --all git push origin --force --all 다른 블로그에는 " "으로 되어있지 않고 ' ' 으로 되어..

Tistory

[Java] Queue offer vs add

Queue queue = new LinkedList<>(); // 어떤 에러가 발생해서 // 아래의 두 메서드들이 실패했다고 했을때 // add 메서드로 큐에 삽입 실패 시 --> 예외를 던진다. queue.add(1); // offer 메서드로 큐에 삽입 실..

Tistory

[Dynamic Programming] 1436 Java 풀이

https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net --------------------------------------------------------..

Tistory

[Dynamic Programming] 11726 Java 풀이

https://www.acmicpc.net/problem/11726 -------------------------------------------------------- 풀이 과정 1. 스케치 2. 데모 구현 3. 데모 구현 다듬고 제출 4. 제출 후 논리오류 혹은 에러 캐칭 ---------..

Tistory

[Dynamic Programming] 11727 Java 풀이

https://www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다..

Tistory

BeanFactory vs ApplicationContext 짧고 굵게 요약

BeanFactory 빈 팩토리는 스프링 컨테이너의 최상위 인터페이스 스프링 빈을 관리하고, 조회하는 역할 getBean()을 제공한다. ApplicationContext 빈 팩토리 기능을 모두 상속받아서 제공 빈 팩토리에서 부가적인..

Tistory

Component Scan 탐색 위치 (주요 어노테이션) , 필터

어노테이션에는 상속관계가 없으므로 어노테이션이 특정 어노테이션을 갖고 있는 것을 인식하는 것은 자바가 아닌 스프링이 지원하는 기능이다. @Configuration : 스프링 설정 정보로 인식, 스프링..

Tistory

Java 8 Stream vs For

Java 8 문법을 공부하다, Stream을 배운 후 정말 편리한 기능이구나 라는걸 느끼면서 근데 성능은 어떻게 되려나...? 하는 궁금증이 생겨 찾은 내용을 정리했다. 우선 결론부터 말하자면 Stream은 알고리즘 문제를..

Tistory

컴파일 vs 인터프리터 (Compile vs Interpreter)

쉽게 예시를 들어 생각을 정리하는 것을 좋아하기 때문에 나만의 예시를 들어보겠다. 축구를 주제로 예시를 만들 것이다. >> 축구경기를 하기 위해선 >> 축구선수 + 코치 + 감독 + 의료진이 있어야한다. 컴파일방..

Tistory

Spring Boot 프로젝트 생성하기 (lombok, spring web, spring data jpa, validation)

Tistory

알고리즘 풀이 기록 GitHub로 이전

https://diger-king.github.io/ChallengeHub/ Challenge Hub IT 스텝업 개발 + 정보보안 관련 교육 프로그램 선발일정 아래의 분야를 클릭하여 확인하기! diger-king.github.io https://github.com/diger-king?tab..

Tistory

데이터통신(초연결사회의 데이터통신과 네트워킹) 중간고사 요약

Tistory

쉽게 배우는 운영체제 요약본

쉽게 배우는 운영체제 (한빛미디어) PART 01 1장 - 운영체제의 개요 2장 - 컴퓨터의 구조와 성능향상 PART 02 3장 - 프로세스와 스레드 4장 - CPU 스케줄링 5장 - 프로세스 동기화 6장 - 교착 상태 요약본 아래는..

Tistory

웹 개발: 정적 컨텐츠란?

Django나 Spring 등 프레임워크에서 정적 컨텐츠를 이용하여 서버를 구현하는 방법이 있다. 여기서 정적 컨텐츠란? HTML, CSS 을 가리키며 말 그대로 사용자와 상호작용 하지 않는 문서를 보여주는 것이다. 웹 프..

Tistory

Intellij 단축키 정리 10가지

Ctrl + Shift + Space 코드 자동완성을 추천 (개꿀기능) Shift + Shift Class, File, Symbol 등 키워드에 관련된 것을 검색 psvm + Tab Public Static void main (자바 입문강의에서 귀찮음 1스택 PoP 가능) Alt +..

Tistory

캐시(버퍼)에 대해서 세상에서 가장 쉬운 설명

캐시란? CPU와 주기억장치(RAM)사이에서 상호간의 속도 차이를 완화하기 위한 중간 장치이다. CPU와 주기억장치 간의 속도차이가 나는이유? CPU는 계산을 위해 설계된 반도체 칩이기 때문에 연산속도 자체가 어마..

Tistory

GitHub 로컬 저장소와 원격 저장소 연결

1. Github에 repository 생성 2. 원격 저장소(repository)와 연결할 로컬 폴더의 경로에서 CMD 열기 3. git init --> git 초기화 4. git remote add origin 레포지토리 주소 --> origin은 원격 저장소의 주소를 뜻..

Tistory

GitHub branch 생성, 확인 , 제거, 이름 변경

#1. 로컬 저장소 브랜치 생성하기 git branch 브랜치이름 #1-1. 원격 저장소 branch 생성 git push origin 신규브랜치 #1.1. 브랜치 확인하기 git branch #2. 브랜치 변경하기 git checkout 브랜치이름 //현재 브..

Tistory

GitHub branch 네이밍 규칙

#브랜치 종류 Master(main) (Main Branch) Develop (Main Branch) Feature/ or / Release/ Hotfix/ or Issue/ #1. Master(main) Branch 최종 배포를 위한 브랜치 기존의 master branch는 Black lives matter 운..

Tistory

OOP Design Pattern (객체지향 설계 5가지 원칙)

교내 Spring Study 발표자료 대체

Tistory

Spring Boot Ubuntu 배포 과정

Spring Boot 배포 과정이다. 중간에 모르는내용이 있다면 자세한 내용은 직접 구글링해서 찾아보자. 추천 키워드 Deploy Spring Boot Ubuntu 1. EC2 구매(Ubuntu 20.0.4) 2. EC2 보안그룹 설정(SSH, HTTPS, HTTP,..

Tistory

SUWIKI 에서 무슨 일이 있었더라? (회고)

협업/소통 툴 : Github, Trello, JANDI, KakaoTalk, Goolge Meet 테스트 : Postman, SpringBootTest 배포환경 : EC2(Ubuntu, Nginx), RDS(MySQL) 개발 과정 요약 프레임워크, DBMS 선정 [2021/10] Node.js + MySQL..

Tistory

후니의 쉽게쓴 CISCO Networking

(후니의 쉽게쓴 CISCO 네트워킹) 서적을 참고하여 요약했다. 군대에서 네트워크 관련된 일을 했을때 기초를 다지기에 아주 좋은 책이였다.

Tistory

1157번: 단어공부

문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 입력 첫째 줄에 알파벳 대소문자로 이루..

Tistory

1316번: 그룹 단어 체커

문제 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때문에..

Tistory

컴퓨터구조 : <CODE> H/W와 S/W에 숨어있는 언어 (부울대수, 기초회로)

[ Ch.10 ] < p.149 부울대수를 위한 예시 ~ > 수컷 고양이 : M 암컷 고양이 : F 황갈색 고양이 : T 검정 고양이 : B 흰색 고양이 : W 다른 모든 색 고양이 : O 중성화 O : N 중성화 X : U 부울 대수에서 + 기호는..

Tistory

Golang : 카카오채용공고 파싱

예전에 만들어봤던 카카오社 채용공고 크롤러이다. package main import ( "fmt" "log" "net/http" "strings" "time" "github.com/PuerkitoBio/goquery" ) func main() { loc, err := time.LoadLocation("Asia/Seo..

Tistory

컴퓨터구조 : <CODE> H/W와 S/W에 숨어있는 언어 (릴레이와 회로)

릴레이를 직렬로 연결 => AND 게이트 -> 각 릴레이의 출력이 다른 릴레이의 입력값이 됨 릴레이를 병렬로 연결 => OR 게이트 --> 각 릴레이의 출력이 모두 같음 인버터(쌍투릴레이) => NOT 게이트 --> 서로 다른..

Tistory

운영체제 : 고등운영체제, 인터럽트 기반 시스템

* 폰 노이만 구조 CPU(processor) Memory 일반적인 OS는 메모리에 있는 수행해야할 작업들을 번갈아가면서 처리한다. 조금 했다가 다른거 넘어가고, 조금 했다가 다른거 넘어가고 ... * 다중 프로세서 시스템 (병..

Tistory

운영체제 : 이중모드, 하드웨어 보호

이중 모드 * 한 컴퓨터를 여러 사람이 동시에 사용하는 환경에서 발생하는 문제점 한 사람이 여러 개의 프로그램을 동시에 사용 한 사람의 고의/실수 프로그램이 전체에 영향 STOP, HALT, RESET 등 * 사용자 프로..

Tistory

컴퓨터구조 : <CODE> H/W와 S/W에 숨어있는 언어 (플립플롭)

인버터는 입력이 0일때 1 출력 입력이 1일때 0 출력 인버터를 이용하여 오실레이터를 만들 수 있는데 오실레이터란? 0과 1을 주기적으로 왔다갔다하는 장치이다. 클럭이라고 불린다. 클럭의 변화를 그래프화 시켜..

Tistory

운영체제 : 운영체제 서비스

운영체제 서비스 1. 프로세스 관리   CPU 자원 관리 2. 주기억장치 관리   메인 메모리 자원 관리 3. 파일 관리 보조기억장치(HDD)내의 파일 자원을 관리 4. 보조기억장치 관리  Track, Sector 의 관리 5. 입..

Tistory

Python : 디렉터리 탐색 + 파일 내용 확인

일단 아래와 같이 기본 틀을 만들었다. 이걸 활용하여 탐색한 모든 파일 내용 혹은 파일 자체 암호화를 만들어 볼 계획이다. import os from cryptography.fernet import Fernet import sys # from Crypto.Cipher..

Tistory

운영체제 : 32bit vs 64bits

2진수는 1비트 8진수는 3비트 16진수는 4비트 로 데이터를 표기한다. 32비트는 2진수 32자리, 16진수로는 8자리로 표기하고, 64비트는 2진수 64자리, 16진수로는 16자리로 표기한다. 메모리 주소공간은 1byte 크..

Tistory

운영체제 : Linux 시스템 디렉터리

* FTZ Trainer 참고 * <주요 디렉토리 기능> dev 장치 파일 저장 sys 리눅스 커널관련 정보 proc 프로세스 정보, 커널 관련 정보 boot 부팅에 필요한 정보 usr 기본 실행파일, 라이브러리 파일, 헤더파일 var 시스..

Tistory

2309번: 일곱 난쟁이(py)

문제 왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다. 아홉 명의 난쟁이는 모두 자신이 "백설 공..

Tistory

2231: 분해합 (py)

문제 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이..

Tistory

4796번: 캠핑(py)

문제 등산가 김강산은 가족들과 함께 캠핑을 떠났다. 하지만, 캠핑장에는 다음과 같은 경고문이 쓰여 있었다. 캠핑장은 연속하는 20일 중 10일동안만 사용할 수 있습니다. 강산이는 이제 막 28일 휴가를 시작했다...

Tistory

11047번: 동전 0 (py)

문제 준규가 가지고 있는 동전은 총 N종류이고, 각각의 동전을 매우 많이 가지고 있다. 동전을 적절히 사용해서 그 가치의 합을 K로 만들려고 한다. 이때 필요한 동전 개수의 최솟값을 구하는 프로그램을 작성하시..

Tistory

함수(function) vs 메서드(method)

함수와 메서드 이 둘에는 분명 차이점이 있으니 명칭 또한 다를거라고 생각이 들었다. 함수와 메서드는 각각 어떠한 기능을 수행하는 요소이다. 둘의 차이점을 살펴보자면, 1. 메서드는 <객체> 와 연관이 되어있는..

Tistory

파이썬 알고리즘 인터뷰 <유효한 팰린드롬>

# p.138 유효한 팰린드롬 # 리스트로 풀이 def is_palindrom(s: str) -> bool: #변수 s는 str의 자료형, is_palindrom의 반환값은 bool의 자료형 strs = [] #strs 라는 리스트 선언 for char in s: #s의 각 원소..

Tistory

#백준 4673번: 셀프 넘버

문제 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을..

Tistory

백준 1065번: 한수(py)

문제 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의..

Tistory

2292번: 벌집 (py)

문제 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집..

Tistory

2839: 설탕배달 (py)

문제 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로..

Tistory

2869번: 달팽이는 올라가고 싶다 (py)

아래는 시간초과로 실패한 코드이다. a, b, v = map(int, sys.stdin.readline().split()) current = 0 #현재 위치 day = 1 #하루 시작 while True: current += a #현재 위치에 a만큼 오르기 if current >= v: #만..

Tistory

4A -Watermelon (py)

import sys w = int(sys.stdin.readline()) if w % 2 == 0 and w != 2: #and 이후의 식 => 2를 절반으로 나누면 홀수인 1, 1이 나오기 때문 print("YES")

Tistory

71A - Way Too Long Words

import sys n = int(sys.stdin.readline()) #입력받을 단어 갯수 words = [str(sys.stdin.readline()) for i in range(n)] # 입력받을 단어들을 \n을 기준으로 나눠 입력 alter_words = [] #입력 단어를 교체할..

Tistory

Python : if__name__ == "__main__"

아래와 같은 한줄의 코드를 보고 이게 무슨 의미인지, 왜 쓰는표현지 궁금해서 알아봤다. if__name__ == "__main__" 이를 알아보려면 먼저 파이썬에서의 namespace라는 개념을 알아야 한다. 파이썬은 list, string..

Tistory

운영체제 공룡책 (Operating-System Concept) 1장

1.1 운영체제가 할 일 -> 운영체제는 다른 프로그램이 유용한 작업을 할 수 있는 환경을 제공한다. -> 운영체제는 다양한 사용자를 위해 다양한 응용프로그램 간의 하드웨어 사용을 제어하고, 조정한다. [*] 사용..

Tistory

DB : ETL이란?

ETL 이란? E : 추출(Extract), T: 변환(Transform), L : 적재(Load) E : 추출 추출은, SQL에서 SELECT를 통해 데이터를 뽑아오는 것이라고 생각하면 되는 것이다. ETL의 예시로 내 갤러리에 있는 임의의 사진에..

Tistory

NetWork : 허브 리피터 브리지 스위치 라우터

허브(물리 계층) 여러개의 포트를 가지고 있어, 여러 장비(PC 등)을 LAN에 접속할 수 있게 해준다. 또한 리피터의 기능인 신호 증폭의 기능을 가지고 있기도 하다. 리피터(물리 계층) 노드 간의 흐르는 전기..

Tistory

백준 10818번: 최소, 최대 (py)

문제 N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다..

Tistory

백준 2562번: 최댓값 (py)

문제 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어..

Tistory

백준 2577: 숫자의 개수 (py)

문제 세 개의 자연수 A, B, C가 주어질 때 A×B×C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오. 예를 들어 A = 150, B = 266, C = 427 이라면 A × B × C = 15..

Tistory

백준 3052: 나머지 (py)

문제 두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다. 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다..

Tistory

백준 1546번: 평균(py)

문제 세준이는 기말고사를 망쳤다. 세준이는 점수를 조작해서 집에 가져가기로 했다. 일단 세준이는 자기 점수 중에 최댓값을 골랐다. 이 값을 M이라고 한다. 그리고 나서 모든 점수를 점수/M*100으로 고쳤다. 예..

Tistory

백준 8958번: OX퀴즈 (py)

문제 "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이..

Tistory

백준 4344번: 평균은 넘겠지(py)

문제 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 입력 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마..

Tistory

백준 15596번: 정수 N개의 합 (py)

문제 정수 n개가 주어졌을 때, n개의 합을 구하는 함수를 작성하시오. 작성해야 하는 함수는 다음과 같다. C, C11, C (Clang), C11 (Clang): long long sum(int *a, int n); a: 합을 구해야 하는 정수 n개가 저..

Tistory

Webhacking.kr Challenge 20 (Webhacking.kr 20번 풀이)

초기화면은 다음과 같다. 1. nickname 2. comment 3. captcha 총 세가지의 입력을 받는다 우측 상단부분을 보면 이 모든 입력값을 2초이내에 입력하라고한다. 사람의 손으론 절대 불가능해보인다. 서버에 어떤방..

1 2