본문 바로가기

반응형

WINK-(Web & App)/알고리즘 스터디

(14)
[2025 1학기 알고리즘 스터디] 1주차 김민재 수 정렬하기3처음에 너무 간단해 왜 간단할까 생각하며 코드를 작성했고 바로 시간 초과가 떴다import java.util.Arrays;import java.util.Scanner;public class NumSort3 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] num = new int[n]; for (int i = 0; i num[j+1]) {// int tmp;// tmp = num[j];// nu..
[2025 1학기 알고리즘 스터디] 1주차, 박현빈 10989번: 수 정렬하기 3각 수에 대응하는 리스트를 생성하여 나오는 숫자 만큼 카운팅하고, 출력import sysN = int(sys.stdin.readline())count = [0] * 10001 for _ in range(N): count[int(sys.stdin.readline())] += 1 for num in range(10001): if count[num] > 0: for _ in range(count[num]): print(num) 11652번: 카드Counter를 사용하여 빈도수를 계산한 후, 최빈값을 찾음.정렬하여 최빈값이 같은 경우 가장 작은 숫자 선택.카운팅 함수 없이 문제를 해결하고자 한다면, 딕셔너리를 선언한고 이러한 딕셔너리를 의..
[2025 1학기 알고리즘 스터디] 이서영 #1주차 * 파이썬으로 풀었습니다.10989번: 수 정렬하기311652번: 카드18870번: 좌표압축 1. 10989번: 수 정렬하기3문제 : N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.정답률(23.935%)을 보자마자 든 생각은나는 무조건 틀리겠다.바로 sort를 생각한 저를 의심한 후 정렬 알고리즘에 대해 공부해줍니다.    정렬 알고리즘: n개의 숫자가 입력으로 주어졌을 때, 기준에 맞게 정렬하는 알고리즘  1. 선택 정렬: 현재 위치에 들어갈 값을 찾아 정렬 ( 시간복잡도 : O(n^2) )  2. 삽입 정렬: 현재 위치에서 그 이하 배열들을 비교하여 자신이 들어갈 위치를 찾아 그 위치에 삽입 ( 시간복잡도 : O(n^2) )3. 버블정렬: 매번 연속된 2개 인덱스를 비교한..
[2025 1학기 알고리즘 스터디] 김민주 #1주차 알고리즘 스터디 1주차 : 정렬 1.  수 정렬하기 3https://www.acmicpc.net/problem/10989  1번 문제는 수 정렬하기입니다!  💡문제 분석 및 알고리즘 설계N이 최대 10,000,000이고, 메모리 제한이 있으므로 생각나는 가장 빠른 정렬 방식을 택해서 구현했는데요바로바로 QuickSort 입니다 더보기#include #include #include using namespace std;int n;vector num;int partition(vector& arr, int l, int r) { int pivot_index = (l + r)/2; swap(arr[pivot_index], arr[r]); int pivot = arr[r]; int i = ..
[2025 1학기 알고리즘 스터디] 김규현 #1주차 1. 수 정렬하기 처음에 문제를 접했을 때 되게 쉽다고 느꼈다.N번 만큼 수를 리스트에 집어넣고 sort를 활용해 리스트를 정렬했다. #첫번째 시도n = int(input())num_list = []for _ in range(n): num = int(input()) num_list.append(num)num_list.sort()for i in num_list[:]: print(i) 하지만 결과는 메모리 초과ㅠㅠ 메모리 초과를 해결하기 위해 전지전능한 chat GPT의 도움을 받아 "카운팅 정렬" 이라는 알고리즘을 공부했다.  카운팅 정렬(Counting sort) 숫자의 개수를 세서 정렬하는 알고리즘이다.숫자의 등장횟수를 기록하는 배열을 만든뒤 그 배열을 돌면서 개수를 반복출력하는 방법이..
[2025 1학기 알고리즘 스터디] 남윤찬 #1주차 1주차는 정렬 문제 3개입니다.더보기import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { public static void main(String[] args) throws IOException{ // 입력 받을 수 있는 값이 많기에 BufferedReader 사용 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); int[] nums = new int[10001]..

반응형