전체 글
-
[BOJ] 백준 22251번: 빌런 호석(C++)/BitMaskingProblem Solving/BOJ(백준) 2021. 7. 24. 23:23
https://www.acmicpc.net/problem/22251 22251번: 빌런 호석 LED를 2개까지 바꿀 수 있을 때, 5층에서 3층, 6층, 8층, 그리고 9층으로 바꿔버릴 수 있다. www.acmicpc.net 류호석배 알고리즘 코딩 테스트는 문제 퀄리티가 정말 좋아서 자주 푸는데 이번에도 새로운 코딩 테스트가 열렸다 실시간으로 참여할까 했지만 평일에 5시간이나 백준 문제를 풀면 너무 지칠 것 같아서ㅠ 천천히 풀어보려고 한다 이 문제는 특이하게 숫자 -> 숫자로 변환하는 과정에서 비트마스킹을 사용했다 아래의 그림처럼, 5를 3으로 바꾸기 위해서는 오른쪽 위의 LED를 켜고 왼쪽 위의 LED를 꺼야해서 2회의 반전이 필요하다 나는 각각의 위치에 대해 번호를 매기고 LED가 켜져있으면 1, 꺼..
-
[Java] String 🆚 StringBuffer 🆚 StringBuilder 무슨 차이일까?Programming/Java 2021. 7. 23. 21:53
"String, StringBuilder, StringBuffer의 차이에 대해 설명하세요" 라는 면접 빈출 질문이 있다고 한다 그래서 오늘 java 공식 api 문서를 보면서 세 가지 클래스의 차이를 정리해 볼 것이다 1. String String 클래스는 character 자료형으로 된 문자열을 표현하는 대표적인 클래스이다. "abc"와 같이 큰따옴표로 표현될 수 있는 문자열이 String 클래스의 구현체이다. "abc"와 같은 문자열 value 자체는 값이 생성된 뒤에 변하지 않는 상수이다. 변수 할당 후 값을 자유롭게 바꿀 수 있는 Numeric형 변수들과 다르게, String의 문자열 value 자체는 바뀔 수 없다. 즉, Immutable한 속성을 가지고 있다는 것인데 설명은 아래의 링크를 참..
-
개발자들을 괴롭히는 SOP(동일 출처 정책)와 CORS(교차 출처 리소스 공유)Web 2021. 7. 21. 02:26
CORS 에러는 프론트엔드-백엔드 간 협업을 곤란하게 하는 악의 축이다 나도 관통프로젝트 할 때 CORS 에러에 의해 앓아누울 뻔 한 적이 있었다가 구글링을 통해 해결했는데, 생각해보니 CORS 에러가 무엇인지 어떤 의미인지에 대해서는 몰랐었기에 https://www.youtube.com/watch?v=bW31xiNB8Nc https://www.youtube.com/watch?v=-2TgkKYmJt4 위의 두 영상을 보고 CORS, 그리고 CORS 에러의 원인인 SOP 정책에 대해 공부하게 되었다. SOP(Same-Origin Policy)란 어떤 출처(프로토콜, 호스트, 포트의 조합을 한 출처라고 한다)에서 불러온 문서, 스크립트, 리소스가 다른 출처에서 가져온 리소스와 상호작용하는 것을 제한하는 보안..
-
[BOJ]백준 11779번: 최소비용 구하기 2(C++)/DijkstraProblem Solving/BOJ(백준) 2021. 7. 20. 01:07
https://www.acmicpc.net/problem/11779 11779번: 최소비용 구하기 2 첫째 줄에 도시의 개수 n(1≤n≤1,000)이 주어지고 둘째 줄에는 버스의 개수 m(1≤m≤100,000)이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스 www.acmicpc.net 다익스트라를 이용해서 최소 비용 및 경로를 구하는 문제 경로를 구할 때에는 pre라는 vector를 만들어서 각 노드로의 최소 비용이 갱신될 때 마다 pre배열도 갱신시켜주면 된다 마지막에는 도착지점으로부터 시작 지점이 나올 때 까지 재귀적으로 tracking하면 끝 #include #include #include #include #define pii pair #d..
-
[Programmers] 2021 카카오 채용연계형 인턴십: 표 편집(Python)/HashingProblem Solving/Programmers 2021. 7. 18. 18:38
https://programmers.co.kr/learn/courses/30/lessons/81303 코딩테스트 연습 - 표 편집 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr 해싱을 이용한 문제가 종종 나오는 추세인듯 .... ㅠ 실제 코테에서는 뭔가 해싱을 써야되지 않을까?라는 생각만 하고 어려워보여서 다른 문제 풀었었는데 실제로 풀어보니 생각만큼 어렵진 않았다 연습할 때 정확성/효율성이 나뉘어져 있는 문제는 우선 러프하게 정확성만 통과하게 짜본 뒤 효율성 풀이로 고치는 편이다 그래..
-
[Network] 네트워크를 설명하는 두 가지 모델 - TCP/IP, OSI 7계층Computer Science/Network 2021. 7. 17. 13:57
OSI 7계층 - 네트워크 통신을 체계적으로 다루는 ISO에서 표준으로 지정한 모델. 데이터를 주고받을 때 데이터 자체의 흐름을 각 구간별로 나눠 놓은 것 TCP/IP 모델 - HTTP, TCP/UDP, IP, ICMP, ARP, Ethernet 등 각종 프로토콜을 중심으로 Layer를 4계층으로 단순화시킨 모델 공통점 계층적 네트워크 모델 계층간 역할 정의 차이점 OSI는 역할 기반, TCP/IP는 프로토콜 기반 OSI는 통신 전반에 대한 표준 TCP/IP는 데이터 전송기술 특화 + 패킷 - 네트워크 상에서 전달되는 데이터를 통칭하는 말 네트워크에서 전달하는 데이터의 형식화된 블록 제어 정보와 사용자 데이터로 이루어지며 사용자 데이터는 페이로드라고도 한다. Encapsulation - 여러 프로토콜을 ..
-
[Network] 데이터 링크 계층의 역할과 Ethernet 프로토콜Computer Science/Network 2021. 7. 15. 18:02
OSI 7계층의 2계층에는 데이터 링크 계층이 위치한다. 데이터 링크 계층 : 장치 간 신호를 전달하는 물리 계층을 이용하여 네트워크 상의 주변 장치들 간 데이터를 전송하는 계층 이 계층에서는 주로 로컬 네트워크에서 통신하는 방법에 대해 정의한다. 실질적인 네트워크 역할을 분류한 TCP/IP 네트워크 모델에서는 데이터 링크 계층과 물리 계층을 묶어 네트워크 인터페이스 모델로 설명하기도 한다. 데이터 링크 계층에서는 같은 네트워크 상(같은 LAN 대역)에 존재하는 여러 장비 중, 어떤 장비가 어떤 장비에게 데이터를 전달하는지의 역할을 수행한다. 또한 추가적으로 그 과정에서 CRC 기반의 오류 제어 및 흐름 제어를 수행한다. 다른 네트워크와 통신하기 위해서는 3계층의 주소와 프로토콜이 필요하며, 3계층을 이..
-
[Programmers]2021 카카오 채용연계형 인턴십: 거리두기 확인하기(Python)/BFSProblem Solving/Programmers 2021. 7. 13. 22:53
https://programmers.co.kr/learn/courses/30/lessons/81302?language=python3 코딩테스트 연습 - 거리두기 확인하기 [["POOOP", "OXXOX", "OPXPX", "OOXOX", "POXXP"], ["POOPX", "OXPXP", "PXXXO", "OXXXO", "OOOPP"], ["PXOPX", "OXOXP", "OXPOX", "OXXOP", "PXPOX"], ["OOOXX", "XOOOX", "OOOXX", "OXOOX", "OOOOO"], ["PXPXP", "XPXPX", "PXPXP", "XPXPX", "PXPXP"]] [1, 0, 1, 1, 1] programmers.co.kr 오랜만에 풀어본 파이썬 BFS 문제 아직은 C가 편하지만 파..