분류 전체보기
-
문제 처음에 내가 생각한 코드 N = int(input()) count = 0 a = N % 5 if a == 0: count = N/5 elif a % 3 == 0: count = (N/5) + a/3 else: for i in range(1, N): b = (N - (3*i)) if b % 5 == 0 and b >= 0 : count = i + b/5 break; else: count = -1 print(int(count)) 1. 5의 배수 먼저 거르고 2. 3의 배수 거르고 3. 위의 둘에서 걸러지지 않았다면 1, N까지 반복하며 N에서 -(3 * i)를 해줌 만약 해준 결과값에서 % 5 (5의 나머지)를 구해서 0이 나오면 count에 i + 5를 해줌 4. 만약 모두 아니면 1 ~ N까지 반복..
[Algorithm] 2839 설탕 배달문제 처음에 내가 생각한 코드 N = int(input()) count = 0 a = N % 5 if a == 0: count = N/5 elif a % 3 == 0: count = (N/5) + a/3 else: for i in range(1, N): b = (N - (3*i)) if b % 5 == 0 and b >= 0 : count = i + b/5 break; else: count = -1 print(int(count)) 1. 5의 배수 먼저 거르고 2. 3의 배수 거르고 3. 위의 둘에서 걸러지지 않았다면 1, N까지 반복하며 N에서 -(3 * i)를 해줌 만약 해준 결과값에서 % 5 (5의 나머지)를 구해서 0이 나오면 count에 i + 5를 해줌 4. 만약 모두 아니면 1 ~ N까지 반복..
2022.08.11 -
IPV4가 뭐야? OSI 7계 층중에 3 계층에 속 허는 프로토콜이다 Ethernet이 가까운 컴퓨터 끼리 통신하는 거였다면 IPV4는 멀리 있는 것끼리 통신 하는 것이라고 말할 수 있겠다!! IPV4의 구조는 어떻게 생겼어? 그림을 그려 오겠다 할말이 정말 많다... Version : IPV4, IPV5, IPV6를 구분 하지만 IPV4 만 쓰인다 (IPV6는 구조 자체가 달라서) HLEN : Header의 길이를 작성 (20 ~60Byte 나누기 4를 해서 작성해준다 그래야 4bit로 적을 수 있기 때문에) Service Type : 이 데이터가 중요하거거나 중요하지 않다는 걸 구분 (거의 사용하지 않음 0으로 작성) Total Length : 패킷의 전체 길이 Identification : 패킷의 ..
[Network] IPV4IPV4가 뭐야? OSI 7계 층중에 3 계층에 속 허는 프로토콜이다 Ethernet이 가까운 컴퓨터 끼리 통신하는 거였다면 IPV4는 멀리 있는 것끼리 통신 하는 것이라고 말할 수 있겠다!! IPV4의 구조는 어떻게 생겼어? 그림을 그려 오겠다 할말이 정말 많다... Version : IPV4, IPV5, IPV6를 구분 하지만 IPV4 만 쓰인다 (IPV6는 구조 자체가 달라서) HLEN : Header의 길이를 작성 (20 ~60Byte 나누기 4를 해서 작성해준다 그래야 4bit로 적을 수 있기 때문에) Service Type : 이 데이터가 중요하거거나 중요하지 않다는 걸 구분 (거의 사용하지 않음 0으로 작성) Total Length : 패킷의 전체 길이 Identification : 패킷의 ..
2022.08.11 -
오늘 알아볼 것 오늘은 OSI 7 계층 중 3 계층(Network)의 프로토콜 ARP에 대해 글을 작성해 보려고 한다 ARP가 뭔야? ARP란 내가 상대 컴퓨터의 IP만 가지고 있을 때 사설 IP 대역의 모든 컴퓨터들에게(브로트 캐스트) 문자를 보낸다 문자 내용 혹시 이 IP 네 거야...?? 그럼 Mac 주소 내놔 그럼 이 문자를 받은 모든 컴퓨터는 자신의 IP와 비교 후 맞으면 문자를 보내온 컴퓨터에 응답한다. 만약 자신의 IP와 다르다면 삭제한다. 이것이 ARP이다 ARP의 구조 첫 줄은 거의 0001 0800이 들어간다 Hardware Type : 2 계층에서 사용하는 Protocol Type (Ethernet = 0001) Protocol Type : Source protocol Address에..
[Network] ARP오늘 알아볼 것 오늘은 OSI 7 계층 중 3 계층(Network)의 프로토콜 ARP에 대해 글을 작성해 보려고 한다 ARP가 뭔야? ARP란 내가 상대 컴퓨터의 IP만 가지고 있을 때 사설 IP 대역의 모든 컴퓨터들에게(브로트 캐스트) 문자를 보낸다 문자 내용 혹시 이 IP 네 거야...?? 그럼 Mac 주소 내놔 그럼 이 문자를 받은 모든 컴퓨터는 자신의 IP와 비교 후 맞으면 문자를 보내온 컴퓨터에 응답한다. 만약 자신의 IP와 다르다면 삭제한다. 이것이 ARP이다 ARP의 구조 첫 줄은 거의 0001 0800이 들어간다 Hardware Type : 2 계층에서 사용하는 Protocol Type (Ethernet = 0001) Protocol Type : Source protocol Address에..
2022.08.10 -
1. 정답만 보고 싶다면 0: print(n, f1, total) return Fibo(n-1, total, total+f1) else: return total print(Fibo(int(input()), 1, 0)) 재귀 함수를 공부하며 꼬리 재귀 함수를 알게 되었고 어떻게 응용할 수 없나 고민하다 만들어 버렸다 그런데 큰 문제가 생겼다 내가 풀었지만 내가 잘 모르겠다.... 큰일이다.... 코드를 적으면서 어 될 것 같은데??라는 생각을 하며 적어 내려갔다 근데 진짜 됐다 이럴 때가 제일 난감하다 내가 쓴 코드를 이해하지 못하면 난 잠을 잘 수가 없다 설명할 것들 리스트 1. 코드 1번 줄부터 마지막 줄까지 이 줄을 사용한 이유를 설명하라 #1 다시 돌아왔다 일단 답은 다 맞게 나오긴 한다 100을 ..
[Algorithm] Fibonacci1. 정답만 보고 싶다면 0: print(n, f1, total) return Fibo(n-1, total, total+f1) else: return total print(Fibo(int(input()), 1, 0)) 재귀 함수를 공부하며 꼬리 재귀 함수를 알게 되었고 어떻게 응용할 수 없나 고민하다 만들어 버렸다 그런데 큰 문제가 생겼다 내가 풀었지만 내가 잘 모르겠다.... 큰일이다.... 코드를 적으면서 어 될 것 같은데??라는 생각을 하며 적어 내려갔다 근데 진짜 됐다 이럴 때가 제일 난감하다 내가 쓴 코드를 이해하지 못하면 난 잠을 잘 수가 없다 설명할 것들 리스트 1. 코드 1번 줄부터 마지막 줄까지 이 줄을 사용한 이유를 설명하라 #1 다시 돌아왔다 일단 답은 다 맞게 나오긴 한다 100을 ..
2022.08.08 -
내가 생각한 규칙 1. 대각선의 줄을 카운트한 것이 홀수면 대각선 위로 방향, 짝수면 대각선 아래 방향으로 간다 나의 코드 (틀린다고 나옴) import java.io.*; public class Problem_1193 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int X = Integer.parseInt(br.readLine()); int count = 0, round = 0; if (X == 1) { System.out.println("1/1"); } for (int i = 2; i = X) { roun..
[Algorithm] 백준 1193 분수찾기내가 생각한 규칙 1. 대각선의 줄을 카운트한 것이 홀수면 대각선 위로 방향, 짝수면 대각선 아래 방향으로 간다 나의 코드 (틀린다고 나옴) import java.io.*; public class Problem_1193 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int X = Integer.parseInt(br.readLine()); int count = 0, round = 0; if (X == 1) { System.out.println("1/1"); } for (int i = 2; i = X) { roun..
2022.08.05 -
대체 서브넷과 서브넷 마스크가 뭐야?? 일단 모든 것을 시작하기 전에 이것이 왜 대체 왜 만들어졌는지 알아야 할 필요가 있다. 만들어진 이유를 모르면 사용법을 모르는 것과 같다 -염정훈- 그럼 왜 사용하는 걸까? 우리는 클래스 단위로 네트워크를 분류해 왔다, 그런데 어떤 회사에서 적은 양의 호스트가 필요한데 갑자기 B class를 줘서 남는 호스트가 너어어무 많아, 근데 또! 어떤 회사는 많은 양의 호스트가 필요한데 남는 호스트가 너 어어어 무 없어 그래서 클래스만을 사용하여 네트워크를 분류하기에는 너무 비효율 적이다 해서 좀 더 적절하게 나눌 필요성이 보여 서브넷이라는 개념이 생겼다. 그래서 서브넷이 뭐야 위에서 말했듯이 클래스로는 적당하게 나눠지질 않아, 그래서 서브넷이 만들어졌고 서브넷은 하나의 네..
[Network] 서브넷,서브넷 마스크대체 서브넷과 서브넷 마스크가 뭐야?? 일단 모든 것을 시작하기 전에 이것이 왜 대체 왜 만들어졌는지 알아야 할 필요가 있다. 만들어진 이유를 모르면 사용법을 모르는 것과 같다 -염정훈- 그럼 왜 사용하는 걸까? 우리는 클래스 단위로 네트워크를 분류해 왔다, 그런데 어떤 회사에서 적은 양의 호스트가 필요한데 갑자기 B class를 줘서 남는 호스트가 너어어무 많아, 근데 또! 어떤 회사는 많은 양의 호스트가 필요한데 남는 호스트가 너 어어어 무 없어 그래서 클래스만을 사용하여 네트워크를 분류하기에는 너무 비효율 적이다 해서 좀 더 적절하게 나눌 필요성이 보여 서브넷이라는 개념이 생겼다. 그래서 서브넷이 뭐야 위에서 말했듯이 클래스로는 적당하게 나눠지질 않아, 그래서 서브넷이 만들어졌고 서브넷은 하나의 네..
2022.08.04 -
이번 문제를 풀며 내가 수학적 논리력이 없다는 걸 깨달았다 기다려라 수학아... 목록 문제 설명 나의 풀이 수식 설명 정답 고정비용 / ( 1 - (가변비용 / 판매비용)) 이 공식을 사용했는데 근데 틀렸다.... 그래서 인터넷 풀이를 보고 다른 공식이 있어 블로그를 참고하였다! 그럼 어떻게 풀어? 풀이를 보았는데 내가 본 풀이 : https://st-lab.tistory.com/71 [백준] 1712번 : 손익분기점 - JAVA [자바] https://www.acmicpc.net/problem/1712 1712번: 손익분기점 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며 st-lab.tistory.com ..
[Algorithm] 백준 1712 - 손익분기점이번 문제를 풀며 내가 수학적 논리력이 없다는 걸 깨달았다 기다려라 수학아... 목록 문제 설명 나의 풀이 수식 설명 정답 고정비용 / ( 1 - (가변비용 / 판매비용)) 이 공식을 사용했는데 근데 틀렸다.... 그래서 인터넷 풀이를 보고 다른 공식이 있어 블로그를 참고하였다! 그럼 어떻게 풀어? 풀이를 보았는데 내가 본 풀이 : https://st-lab.tistory.com/71 [백준] 1712번 : 손익분기점 - JAVA [자바] https://www.acmicpc.net/problem/1712 1712번: 손익분기점 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며 st-lab.tistory.com ..
2022.08.04 -
목록 첫 번째 절망 두 번째 절망 성공 (풀이) 0){ break; } if(word[j] != word[j-1]){ alpha[(int)word[j] - 'a') += 1; alpha[(int)word[j-1] - 'a') += 1; } else if(word[j] == word[j+1]){ continue; } } 그런데 문제가 생겼다 1. 첫 번째 방법과 같다 뒤에 나오는 독립된 문자를 잡기가 어려워졌다. ex) hoollyo 여기서 o가 총 3번 나오는 데 연속된 o에서 alpha 배열에 +2가 된다 이렇게 되니 l로 넘어가기 전에 break가 되었다. #3 성공 문제를 계속 보다가 아니 뮈첸 왜 Boolean을 알고리즘 풀 때 한 번도 사용할 생각을 못했을까? 나는 생각했다 Boolean을 쓰자..
[Algorithm] 백준 1316목록 첫 번째 절망 두 번째 절망 성공 (풀이) 0){ break; } if(word[j] != word[j-1]){ alpha[(int)word[j] - 'a') += 1; alpha[(int)word[j-1] - 'a') += 1; } else if(word[j] == word[j+1]){ continue; } } 그런데 문제가 생겼다 1. 첫 번째 방법과 같다 뒤에 나오는 독립된 문자를 잡기가 어려워졌다. ex) hoollyo 여기서 o가 총 3번 나오는 데 연속된 o에서 alpha 배열에 +2가 된다 이렇게 되니 l로 넘어가기 전에 break가 되었다. #3 성공 문제를 계속 보다가 아니 뮈첸 왜 Boolean을 알고리즘 풀 때 한 번도 사용할 생각을 못했을까? 나는 생각했다 Boolean을 쓰자..
2022.08.03 -
나는 염정훈 나이는 19 글을 시작하겠다. 문제에 대한 나의 생각 나는 뒤에 =, -, j가 오고 앞에 특정 문자가 오면 카운트를 세는 그런 로직을 생각하였다. 그렇지만 이렇게 해버리면 나머지 독립된 문자(a, b, c, d, e, f 등등)를 처리하기가 어려워진다. 그래서 다른 풀이를 찾아보다가 밑의 풀이를 발견하였다. 나의 풀이 import java.io.*; public class Main{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); char[] charr = br.readLine().toCharArray..
[Algorithm] 백준 2941나는 염정훈 나이는 19 글을 시작하겠다. 문제에 대한 나의 생각 나는 뒤에 =, -, j가 오고 앞에 특정 문자가 오면 카운트를 세는 그런 로직을 생각하였다. 그렇지만 이렇게 해버리면 나머지 독립된 문자(a, b, c, d, e, f 등등)를 처리하기가 어려워진다. 그래서 다른 풀이를 찾아보다가 밑의 풀이를 발견하였다. 나의 풀이 import java.io.*; public class Main{ public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); char[] charr = br.readLine().toCharArray..
2022.08.03 -
Select sort 정렬 알고리즘을 배우기 시작하면 가장 먼저 배우는 것 코드 import java.util.Arrays; public class Main{ final static int[] arr = { 1, 10, 5, 8, 7, 6, 4, 3, 2, 9 }; public static void main(String[] args) { for (int i = 0; i < arr.length; i++) { int min = i; for (int j = i + 1; j < arr.length; j++) { if (arr[j] < arr[min]) { min = j; } } swap(i, min); } System.out.println(Arrays.toString(arr)); } // O(N) public ..
[Algorithm] Select sort AlgorithmSelect sort 정렬 알고리즘을 배우기 시작하면 가장 먼저 배우는 것 코드 import java.util.Arrays; public class Main{ final static int[] arr = { 1, 10, 5, 8, 7, 6, 4, 3, 2, 9 }; public static void main(String[] args) { for (int i = 0; i < arr.length; i++) { int min = i; for (int j = i + 1; j < arr.length; j++) { if (arr[j] < arr[min]) { min = j; } } swap(i, min); } System.out.println(Arrays.toString(arr)); } // O(N) public ..
2022.08.02