728x90
반응형

전체 글 260

SOR vs SOE 완벽 정리: 시스템의 기록과 소통을 구분하는 법

📌 SOR, SOE가 뭐길래? — IT 구조에서 꼭 알아야 할 핵심 개념기업 시스템을 이해하다 보면SOR, SOE 같은 약어가 종종 등장합니다.처음 보면 좀 낯설지만, 알고 나면“아, 그래서 이 시스템이 이런 역할을 하는구나!”하고 전체 구조가 훅 이해되는 개념이에요.오늘은 **SOR(System of Record)**와**SOE(System of Engagement)**의 차이를쉽게 풀어서 설명해볼게요.🧱 1. SOR (System of Record)‘공식 데이터가 저장되는 단 하나의 시스템’SOR은 말 그대로 기록의 기준점입니다.회사에서 어떤 데이터가 “공식적으로 맞다”고 인정한원본 데이터를 담고 있는 시스템이죠.✔ 이런 시스템들이 SOR입니다ERP → 재무·회계 데이터의 SORHR/인사 DB →..

IT/아키텍처 2025.11.23

SQLD 핵심정리 | 컬럼의 NULL 완벽정리

🔹 1. NULL의 기본 개념구분 내용정의데이터가 ‘존재하지 않음(Unknown)’을 의미특징0, 공백('')과 다름저장 방식실제 값이 저장되지 않으며, 공간도 절약될 수 있음연산NULL이 포함된 연산 결과는 항상 NULL📌 예시SELECT 100 + NULL; -- 결과: NULLSELECT 'A' || NULL; -- 결과: NULL🔹 2. NULL 비교 주의사항비교식 결과 설명NULL = NULLFALSENULL은 미확정 값이므로 비교 불가NULL NULLFALSE같지도 다르지도 않음NULL IS NULLTRUENULL 여부 확인 가능✅ NULL 비교는 반드시 IS NULL, IS NOT NULL을 사용합니다.WHERE 컬럼명 IS NULLWHERE 컬럼명 IS NOT NULL🔹 3...

IT/DB 2025.11.23

SQLD 핵심정리 | 컬럼의 NULL 완벽정리

🔹 1. NULL의 기본 개념구분 내용정의데이터가 ‘존재하지 않음(Unknown)’을 의미특징0, 공백('')과 다름저장 방식실제 값이 저장되지 않으며, 공간도 절약될 수 있음연산NULL이 포함된 연산 결과는 항상 NULL📌 예시SELECT 100 + NULL; -- 결과: NULLSELECT 'A' || NULL; -- 결과: NULL🔹 2. NULL 비교 주의사항비교식 결과 설명NULL = NULLFALSENULL은 미확정 값이므로 비교 불가NULL NULLFALSE같지도 다르지도 않음NULL IS NULLTRUENULL 여부 확인 가능✅ NULL 비교는 반드시 IS NULL, IS NOT NULL을 사용합니다.WHERE 컬럼명 IS NULLWHERE 컬럼명 IS NOT NULL🔹 3...

IT/DB 2025.11.09

[PCCP JAVA] 땅따먹기

문제 링크 👉 https://school.programmers.co.kr/learn/courses/30/lessons/12913📌 문제 설명땅따먹기 게임 규칙땅은 N행 × 4열각 칸에 점수가 적혀 있음1행에서 시작하여 한 행씩 내려오며 한 칸만 선택같은 열을 연속해서 밟을 수 없음마지막 행까지 내려왔을 때 얻을 수 있는 점수의 최댓값을 구해야 함예시:[ [1, 2, 3, 5], [5, 6, 7, 8], [4, 3, 2, 1] ]가능한 최적 경로: (5) → (7) → (4)총점: 16❌ 잘못된 접근 — BFS/DFS 완전탐색처음에 많이 하는 실수는 모든 경로를 전부 탐색하는 방법입니다.각 행에서 최대 4가지 선택경로 수 = 4^N → N이 커지면 (최대 100,000) 시간/메모리 폭발따라서 완전..

[PCCP Java] [1차] 뉴스 클러스터링

📎 문제 링크: 프로그래머스 뉴스 클러스터링✅ 문제 핵심 요약두 문자열을 두 글자씩 끊어 다중집합으로 구성영문자가 아닌 쌍은 제외대소문자 구분 없음두 다중집합 간의 자카드 유사도 계산자카드 유사도 J(A, B) = |A ∩ B| / |A ∪ B|단, 두 집합이 모두 공집합이면 유사도는 1최종 출력: 자카드 유사도 * 65536 → 소수점 버리고 정수 리턴✅ 문제 접근 방식문자열을 소문자로 변환하고, 두 글자씩 끊어 유효한 쌍을 추출추출된 쌍으로 다중집합을 구성 (HashMap 사용)교집합은 min(map1[i], map2[i]), 합집합은 max(map1[i], map2[i])로 계산유사도 계산 후 65536을 곱하여 정수로 반환✅ Java 풀이 코드import java.util.*;class Solu..

[PCCP Java Stack] 주식가격

📈 프로그래머스 PCCP - 주식가격 Java 풀이 (스택 방식 시간순 해설 포함)문제 링크: 프로그래머스 - 주식가격🧾 문제 설명초 단위로 기록된 주식 가격이 담긴 배열 prices가 주어집니다.각 시점에서 가격이 떨어지지 않은 시간(초) 을 계산해 int[]로 반환하세요.🎯 입력/출력 예pricesreturn[1, 2, 3, 2, 3][4, 3, 1, 1, 0]🔍 설명1초 시점의 1원은 끝까지 떨어지지 않음 → 4초간 유지 → 42초 시점의 2원은 끝까지 떨어지지 않음 → 33초 시점의 3원은 다음 초에 떨어짐 → 14초 시점의 2원은 1초 유지 → 15초 시점의 3원은 마지막이므로 0초 유지 → 0🚫 완전탐색 방식 (비효율)public int[] solution(int[] prices) {..

PCCP/스택 2025.07.20

[프로그래머스 JAVA] 최대공약수와 최소공배수

문제 링크 👉 https://school.programmers.co.kr/learn/courses/30/lessons/12940✍ 문제 설명두 개의 자연수 n, m이 주어졌을 때,최대공약수(GCD, Greatest Common Divisor)최소공배수(LCM, Least Common Multiple)를 배열에 담아 [GCD, LCM] 형태로 반환하는 solution() 함수를 작성하는 문제입니다.예를 들어,입력값 n = 3, m = 12가 주어졌을 때,최대공약수는 3,최소공배수는 12이므로 [3, 12]를 반환해야 합니다.✅ 제한 조건1 ≤ n, m ≤ 1,000,000시간복잡도를 고려한 효율적인 구현이 요구됨💡 핵심 개념이 문제를 풀기 위해 알아야 할 수학 공식은 아래와 같습니다.최대공약수 (GCD..

[프로그래머스 JAVA] 징검다리 건너기

🔗 문제 링크 바로가기📌 문제 개요디딤돌이 일렬로 놓여 있는 개울을 친구들이 하나씩 건너가려 합니다.각 디딤돌에는 숫자가 쓰여 있고, 누군가 밟을 때마다 그 숫자는 1씩 줄어듭니다.숫자가 0이 되면 그 디딤돌은 밟을 수 없으며, 최대 k칸까지 점프할 수 있습니다.목표: 최대 몇 명까지 무사히 징검다리를 건널 수 있는지를 구하라.✅ 입력 조건stones: 각 디딤돌의 최대 하중 수치 배열 (1 이상 200,000개)k: 건너뛸 수 있는 최대 칸수 (1 이상 stones.length 이하)💡 문제 핵심 아이디어특정 인원 수 n명이 건널 수 있다고 가정했을 때,디딤돌을 밟을 때마다 1씩 감소되므로 stone[i] - n 인 지점은 밟을 수 없다.이처럼 밟을 수 없는 디딤돌이 연속으로 k개 이상 나오면 →..

[프로그래머스 JAVA] 순위 검색

🔗 문제 링크 바로가기✅ 문제 요약지원자의 조건 정보 (info)와 조건 질의 (query)가 주어졌을 때, 조건을 만족하면서 코딩테스트 점수가 특정 기준 이상인 지원자 수를 빠르게 찾아야 합니다.각 지원자는 아래 4가지 조건을 가집니다:개발 언어: cpp, java, python직군: backend, frontend경력: junior, senior소울푸드: chicken, pizza질의에는 -로 와일드카드 처리도 가능합니다.🎯 핵심 풀이 전략모든 조건 조합을 미리 생성 (DFS 사용)각 info 데이터에서 4개의 조건을 바탕으로 총 2⁴ = 16가지 조합의 키를 만들어 HashMap에 저장각 조건 조합의 점수 리스트를 정렬이진 탐색을 활용하기 위함쿼리마다 키를 생성하고 이진 탐색으로 개수 계산💡 ..

[프로그래머스 JAVA] 소수 찾기

🔗 문제 링크👉 프로그래머스 소수 찾기 문제 바로가기✅ 문제 설명숫자들이 적힌 종이 조각이 흩어져 있음이 조각들을 이어붙여 만들 수 있는 모든 수 중 소수의 개수를 구하라단, 같은 숫자 조각을 한 번씩만 사용 가능조합된 수는 중복 없이 처리해야 함예시입력만들 수 있는 소수출력"17"7, 17, 713"011"11, 1012🔧 문제 접근 방법모든 자리 수 조합을 백트래킹(순열)으로 생성조합한 문자열을 숫자로 바꾸어 HashSet에 저장 (중복 제거)저장된 수들 중 소수를 판별하여 카운트💡 핵심 포인트포인트설명✅ 순열(백트래킹)자릿수 상관없이 가능한 모든 숫자 생성✅ 중복 제거HashSet로 조합된 숫자 중복 방지✅ 소수 판별2 이상 수에 대해 √n까지 나눠보는 방식 사용🧪 코드 (Java)impo..

728x90
반응형