본문 바로가기

전체 글32

[항해99클럽] Java 비기너_Day 2 문자열 분석 오늘의 문제 >> https://www.acmicpc.net/problem/10820 [ 생각 흐름 ] 배열에 [소문자 개수, 대문자 개수, 숫자 개수, 공백 개수]를 넣고 공백 기준으로 출력하면 되겠다!각각의 개수는 문자열을 한 문자씩 반복하면서 해당하는 유형에 값을 +1 해야지~ [ Java ] import java.io.*;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String input = ""; while((input=br.r.. 2025. 4. 1.
[항해99클럽] Java 비기너_Day 1 명령 프롬프트, 팰린드롬 오늘의 문제 >> https://www.acmicpc.net/problem/1032 항상 코테는 Python으로 풀어 왔는데, 이번에는 Java로 도전해보려고 한다❤️‍🔥근데 아무 준비없이 문제를 풀려고 보니, 기본 문법조차 기억이 안나서 당황스러웠다.그래서 일단 python으로 풀고, 내가 구현한 로직을 java문법으로 고치는 방법으로 진행했다. [ 생각 흐름 ] 모든 파일명의 길이가 같으니,첫번째 파일명을 기준으로 첫번째 글자부터 마지막 글자까지 for문으로 돌면서, 이중 for문으로 입력된 모든 파일들의 동일 자리의 문자를 비교해야겠다 생각했다. [ Python ]N = int(input())file_lst = []for _ in range(N): file_name = input() f.. 2025. 3. 31.
[백준] 15894번 - 수학은 체육과목 입니다 문제 성원이는 수학을 정말 못 하는 고등학생이다. 수학을 못하는 대신 근성과 팔 힘이 뛰어난 성원이는 수학 시험에서 수학 지식을 사용하지 않고 근성과 체력을 사용해 문제를 푼다. 지난 시험에서는 아래 사진에 나와있는 문제를 근성과 체력을 사용해 열심히 풀었지만 사진에서 볼 수 있듯이 틀려버리고 말았다! 결국 이 문제는 틀려버렸지만 성원이는 여전히 자신의 체력에 강한 자신감을 갖고 있다. 어떤 어려운 문제가 나와도 이런 식으로 근성과 체력을 사용하면 다 풀 수 있으니 이 방법은 최고의 방법이라고 생각하고 있다. 성원이의 친구 형석이는 근성과 체력으로 수학 문제를 푸는 것은 굉장히 무식한 방법이라고 생각한다. 형석이는 수학을 공부하면 문제를 훨씬 빨리 풀 수 있다는 것을 알려주기 위해 위 사진에 나와있는 문.. 2024. 1. 8.
[백준] 10807번 - 개수 세기 문제 총 N개의 정수가 주어졌을 때, 정수 v가 몇 개인지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거나 같으며, 100보다 작거나 같다. 출력 첫째 줄에 입력으로 주어진 N개의 정수 중에 v가 몇 개인지 출력한다. [ 제출 코드 ] _ 30840KB, 68ms import sys n = int(input()) data = list(map(int, sys.stdin.readline().split())) v = int(input()) print(data.count(v)) [ TIL ] python에선 보통 입력 받.. 2022. 11. 3.
[이코테] 복잡도 동일한 기능을 수행하는 알고리즘이 있다면 일반적으로 복잡도가 낮을수록 좋은 알고리즘이다. 1_ 시간 복잡도(Time Complexity) '얼마나 오래 걸리는지' → 연산 횟수 # 빅오(Big-O) 표기법 : 가장 빠르게 증가하는 항만을 고려하는 표기법 빅오 표기법 명칭 O(1) 상수 시간 (Constant time) O(logN) 로그 시간 (Log time) O(N) 선형 시간 O(NlogN) 로그 선형 시간 O(N^2) 이차 시간 O(N^3) 삼차 시간 O(2^n) 지수 시간 (시간 복잡도 표에서 위쪽에 있을수록 더 빠름) 코딩테스트 문제를 풀기전에 조건을 보면 얼마나 효율적인 알고리즘을 작성해야 하는지 눈치 챌 수 있다. 예를 들어, 시간 제한 1초인 문제에 데이터의 개수 N이 1000만개를 넘어.. 2022. 11. 3.
[멋사] AI SCHOOL 5기_ Day 31 K-Means Algorithm 비지도학습의 Clustering(군집화) 도구다. 비슷한 데이터는 같은 그룹으로 묶고, 비슷하지 않은 데이터는 다른 그룹으로 떨어뜨리는 것이 목표다. 여기서 K 값은 클러스터 개수를 의미하며 직접 지정하는 hyper-parameter인데, 최적의 클러스터 개수를 정하는 것이 어렵고 중요하다. K-Means의 원리는 다음과 같다. 1. K개의 임의의 중심값을 고른다. (보통 데이터 샘플 중의 하나를 선택) 2. 각 데이터마다 중심값까지의 거리를 계산하여 가까운 중심값의 클러스터에 할당한다. 3. 각 클러스터에 속한 데이터들의 평균값으로 각 중심값을 이동시킨다. 4. 데이터에 대한 클러스터 할당이 변하지 않을 때까지 2와 3을 반복한다. iris 데이터를 가지고 K-Means.. 2022. 4. 13.