일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 소수 #소인수분해 #소인수
- orangefororacle
- oracle
- eclipse shortcut
- Baekjoon
- 펙토리얼
- StringTokens
- 등호
- JavaScript
- 환경변수등록
- 등가조인
- 기간계
- innerjoin
- SQL
- 마이플랫폼
- 계정계
- sqldeveloper
- javascript내장함수
- 컬럼조회
- 대외계
- REACT
- Collections.sort
- 정보계
- 거듭제곱
- NVM
- 운영계
- websqueare
- websquare
- fusionchart
- java
- Today
- Total
목록algorithm (4)
티끌모아 개발

https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 풀이 먼저 이렇게 작은 단위로 쪼개서 규칙을 살펴보면 (1,1)일때 공간이 빈다. 이렇게 길게 놓고 보면 (1,1),(1,4),(1,7),(1,10),(1,13),(1,16),(1,19),(1,22),(1,25)에 공백이 생기므로 x%3==1 && y%3==1 의 공식이 성립된다. N = 9 일 경우, 위와 같은 모양을 가지게 되는데, 이 때 중요하게 봐야 할 것은 N ..
아래 출처를 확인하면 다양한 방법으로 풀이가 되있으나 아래 방법이 시간복잡도에서 가장 빠른것이여서 정리해 둔다. public class RotateArray { void leftRotate(int arr[],int d, int n){ //d가 n보다 클경우를 헨들링하기위한 처리 //n이 클경우 d를 반환하게 된다. d = d%n; int i,j,k,temp; int g_c_d = gcd(d,n); for(i=0;i=n) k=k-n; if(k==i) break; arr[j]=arr[k]; j=k; } arr[j]=temp; } } //최대공약수 int gcd(int a,int b){ if(b == 0){ return a; }else{ return gcd(b,a%b); } } ////왼쪽의 숫자를 하나씩 앞..

1번째 방법> package demo; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.util.Arrays; public class BackQuickOrg { public static void main(String[] args) throws NumberFormatException, IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); Buffere..

알고리즘 공부를 시작하자마자 난관이다. ㅎㅎ 그래도 잘 정리하고 공부하다보면 언젠가는 된다고 생각한다. 일단 정리해보자. Quick 정렬은 값을 두 부분으로 나누어 각각 함수를 적용해 정렬을 한 다음 결과를 합치는 방식이다. 그렇기 때문에 속도는 데이터가 복잡하게 얽혀있을 수록 훨씬더 빠르게 처리하는 효과를 볼 수 있다. 만일 데이터가 정렬이 잘 되있는데 잘못된 한, 두개를 찾는다면 이 정렬방식은 오히려 불필요한 연산을 더 하게 되므로 적합하지 않다. 오늘은 복잡하게 엉킨 숫자를 오름차순으로 깔끔하게 정렬하는 알고리즘을 공부해 보겠다. 먼저 아래와 같은 배열이 있다고 가정하고, 배열안에 숫자를 정렬해보자. int[] array={2,5,4,6,8,10,1,7,9,3}; 이제 함수를 정의하고, 필요한 변수..