코린이 공부 기록 저장소🤪
article thumbnail
유클리드 & 확장된 유클리드 알고리즘
알고리즘/C++ 2023. 10. 23. 05:04

유클리드 알고리즘 유클리드 알고리즘은 유클리드 호제법이라고 불리며 2개의 자연수의 최대공약수를 구하는 알고리즘의 하나이다. 호제법이라는 말은 두 수가 서로 상대방 수를 나누어 결국 원하는 수를 얻는 알고리즘을 의미한다. 유클리드 알고리즘은 RSA 암호화 기법에 사용된다. 원리 예시) 78696과 19332의 최대공약수를 구하면, gcd(78696, 19332) 78696 =19332×4 + 1368 gcd(19332, 1368) 19332 = 1368×14 + 180 gcd(1368, 180) 1368 = 180×7 + 108 gcd(180, 108) 180 = 108×1 + 72 gcd(108, 72) 108 = 72×1 + 36 gcd(72, 36) 72 =36×2 + 0 gcd(36, 0) 즉, g..

article thumbnail
[java] - printf 로 % 출력하기
언어/java 2023. 10. 4. 04:09

백준 문제를 풀다가 % 를 함께 출력해야 하는 문제를 만났다. -> https://www.acmicpc.net/problem/4344 package array; import java.util.*; public class Baekjoon_4344 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); for (int i = 0; i < n; i++){ int student = sc.nextInt(); int[] score = new int[student]; for (int j = 0; j < student; j++){ score[j] = sc.nextInt(); } double a..

article thumbnail
[Java] - 클래스
언어/java 2023. 10. 2. 04:20

클래스와 객체 class Animal { } // 보통 자바에서는 따로 파일을 만들지만 가독성상 한 파일에 쓰겠음 public class Sample { public static void main(String[] args) { Animal cat = new Animal(); } } Animal class 는 가장 간단한 클래스 형태 껍데기 뿐일지라도 객체를 만드는 기능! 객체는 다음과 같이 만든다. class Animal { } public class Sample { public static void main(String[] args) { Animal cat = new Animal(); // 여기! } } new는 객체를 생성할 때 사용하는 키워드 cat 은 Animal 클래스의 인스턴스 이면서 하나의 ..

article thumbnail
[Golang] - 반복문
언어/golang 2023. 10. 2. 03:38

for 문 Go 는 반복문이 for문 하나밖에 없다. 아래 예제는 1부터 100까지 더하는 루프문의 예이다. package main func main() { sum := 0 for i := 1; i 90 { // break //} } println(n) }for 문 - 무한루프 for문으로 무한루프를 만들 때 초기값; 조건식; 증감 을 모두 생략해도 된다. 무한루프를 빠져나올 때는 Ctrl + C 를 누른다. package main func main() { for { println("Infinite loop") } }for range 문 for range 문은 컬렉션으로 부터 한 요소(element)씩 가져와 차례로 for 블럭의 문장들을 실행한다. 이는 java의 for-each와 비슷한 용법이다. f..

article thumbnail
[Golang] - 조건문
언어/golang 2023. 10. 2. 02:53

if 문 조건문에 괄호 필요 x C/C++ 같은 다른 언어들과 달리 조건문이 반드시 Boolean 식으로 작성되어야 한다 조건문에 0, 1 사용 불가능 조건문의 블록 시작 브레이스는 같은 라인에 있어야 한다 if k == 1 { // 같은 라인 println("One") } if, else, else if 사용 가능 if k == 1 { // 같은 라인 println("One") } else if k ==2 { // 같은 라인 println("Two") } else { // 같은 라인 println("Others") } if 문에서 조건식 사용 전에 간단한 문장(Optional Statement)과 함께 실행 가능 주의할 점은 이 때 정의된 변수는 조건문 내에서만 사용 가능 이러한 Optional Sta..

article thumbnail
[Golang] - 연산자
언어/golang 2023. 10. 2. 02:48

산술연산자 사칙연산자(+, -, *, /, %(Modulus))와 증감 연산자(++, —) c = (a + b) / 5; i++; 관계연산자 a == b a != c a >= b 논리연산자 and, or, not A && B A || !(C && B) Bitwise 연산자 비트단위 연산에 사용 and, or, xor 와 바이너리 쉬프트 연산자가 있다 c = (a & b)