728x90

분류 전체보기 153

[C] 백준 1002 터렛 ✈️

문제 조규현과 백승환은 터렛에 근무하는 직원이다. 하지만 워낙 존재감이 없어서 인구수는 차지하지 않는다. 다음은 조규현과 백승환의 사진이다. 이석원은 조규현과 백승환에게 상대편 마린(류재명)의 위치를 계산하라는 명령을 내렸다. 조규현과 백승환은 각각 자신의 터렛 위치에서 현재 적까지의 거리를 계산했다. 조규현의 좌표 (x1, y1)와 백승환의 좌표 (x2, y2)가 주어지고, 조규현이 계산한 류재명과의 거리 r1과 백승환이 계산한 류재명과의 거리 r2가 주어졌을 때, 류재명이 있을 수 있는 좌표의 수를 출력하는 프로그램을 작성하시오. -첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 다음과 같이 이루어져 있다. 한 줄에 x1, y1, r1, x2, y2, r2가 주어진다. x1, y1..

[C] 문자열 fgets, gets 차이

문제 입력 $ aldjfdie $ ajfhw djfoq 출력 aldjfdie:8 ajfhw djfoq:11 학습 C언어를 다루면서 input할 때 가장 많이 사용했던 입력방법은 scnaf이다. 대부분의 자료형을 받을 수 있으며 편리하고 간단하게 사용할 수 있기 때문이다. 하지만 문자열 문제를 풀면서 문자열에 공백이 들어가고, 크기를 초과하는 순간 scanf는 사용할 수 없다는 것을 알게되었다. 그래서 새롭게 찾은 입력방법이 gets와 fgets이다. 앞서 백준judge로 공부하면서 gets의 사용법에 대해 익힌적이 있기 때문에 이번에는 gets와 fgets의 차이에 중점을 두고 학습하였다. 우선 scanf와 gets를 비교해보면, 공백을 기준으로 scanf는 공백 앞까지 저장하고, gets는 공백을 포함..

[C] 백준 2839번 설탕배달 🧁

문제 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. 학습 이런식으로 워드에 각 숫자를 적어보았을 때 3의 배수와 5의 배수를 구분 하여 계산하면 되겠다고 생각했다. 추가로 주..

[C]백준 1712 손익분기점

문제 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 인건비 등 총 B만원의 가변 비용이 든다고 한다. 예를 들어 A=1,000, B=70이라고 하자. 이 경우 노트북을 한 대 생산하는 데는 총 1,070만원이 들며, 열 대 생산하는 데는 총 1,700만원이 든다. 노트북 가격이 C만원으로 책정되었다고 한다. 일반적으로 생산 대수를 늘려 가다 보면 어느 순간 총 수입(판매비용)이 총 비용(=고정비용+가변비용)보다 많아지게 된다. 최초로 총 수입이 총 비용보다 많아져 이익이 발생하는 지점을 손익분기점(BREAK-EVEN POINT)이라고 한다. A, B, C가 주어졌..

[C]백준 5622 다이얼 (문자열)

문제 전화를 걸고 싶은 번호가 있다면, 숫자를 하나를 누른 다음에 금속 핀이 있는 곳 까지 시계방향으로 돌려야 한다. 숫자를 하나 누르면 다이얼이 처음 위치로 돌아가고, 다음 숫자를 누르려면 다이얼을 처음 위치에서 다시 돌려야 한다. 숫자 1을 걸려면 총 2초가 필요하다. 1보다 큰 수를 거는데 걸리는 시간은 이보다 더 걸리며, 한 칸 옆에 있는 숫자를 걸기 위해선 1초씩 더 걸린다. 상근이의 할머니는 전화 번호를 각 숫자에 해당하는 문자로 외운다. 즉, 어떤 단어를 걸 때, 각 알파벳에 해당하는 숫자를 걸면 된다. 예를 들어, UNUCIC는 868242와 같다. 할머니가 외운 단어가 주어졌을 때, 이 전화를 걸기 위해서 필요한 최소 시간을 구하는 프로그램을 작성하시오. 학습 문제에 적힌 다이얼의 알파벳..

[C]백준 1152 단어의 개수 (gets)

문제 영어 대소문자와 띄어쓰기만으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. 학습 앞에서 풀었던 백준 문자열 문제 처럼 문자열 선언 후 scanf("%s")로 받으려 했으나 실행시 자꾸 첫 단어만 입력되거나, 출력 결과로 0이 나오는 오류가 발생했다. 이에 대해 찾아보니 scanf() 함수는 여러 변수를 저장할 수 있는 대신, 공백 문자열은 저장하지 못한다고 한다. 그래서 공백까지 저장할 수 있는 함수인 gets를 새롭게 학습할 수 있었다. scanf와 gets의 차이 scanf = 공백을 저장할 수 없기 때문에 문자열을 입력받기에 적합하지 않다. gets = 줄바꿈 Ent..

[C]백준 4673 셀프넘버 (bool)

문제 셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때, 이 수를 시작해서 n, d(n), d(d(n)), d(d(d(n))), ...과 같은 무한 수열을 만들 수 있다. 예를 들어, 33으로 시작한다면 다음 수는 33 + 3 + 3 = 39이고, 그 다음 수는 39 + 3 + 9 = 51, 다음 수는 51 + 5 + 1 = 57이다. 이런식으로 다음과 같은 수열을 만들 수 있다. 33, 39, 51, 57, 69, 84, 96, 111, 114, 120, 123, 129, 141, ... n을 d(n)의 생성자라..

[20.09.18] ARP 스푸핑 실습

ARP 스푸핑이란?IP 주소와 MAC 주소간 대응은 ARP 프로토콜을 통해 이루어지 는데, 이때 공격자가 의도적으로 특정 IP 주소와 자신의 MAC 주소로 대응하는 ARP 메시지를 발송하면, 그 메시지를 받은 장 비는 IP 주소를 공격자 MAC 주소로 인식하게 되고, 해당 IP 주 소로 보낼 패킷을 공격자로 전송하게 된다. 이 때 공격자는 그 패 킷을 원하는 대로 변조한 다음 원래 목적지 MAC 주소로 발송하 는 공격을 할 수도 있다. 흔히 사용되는 공격 방식은 게이트웨이 IP를 스푸핑하는 것이다. 가상머신의 칼리리눅스에서 /희생자 PC – 윈도우, 공격자 PC – 칼리 리눅스/로 실습 진행하였고, 절대로 실 서버에 공격하면 안된다는 점을 주의하자 1.우선 텔넷(telnet) 서버를 구축 한 후 cmd창..

[20.09.11] ARP 스푸핑

동아리에서 2학기에는 하나의 주제를 가지고 총 2주간 학습을 진행한다. 1학기때는 매주 실습을 진행했는데, 그러다보니 개념을 놓치고 실습만 하게 되어 잘 이해가 되지 않을 때가 많았다. 그래서 2학기때는 첫번째 주차에는 관련 개념을 키워드로 정리하여 학습하고, 그 지식을 바탕으로 두번째 주차에 실습을 진행하기로 하였다. 20.09.11 의 키워드 : ARP, ARP 스푸핑, ARP 스푸핑 공격 과정, ARP 스푸핑 대응 방안, IP/MAC 주소, OSI 7계층, broadcast/unicast ARP : -ARP(Address Resolution Protocol = IP->MAC) - IP를 이용해서 MAC 알아내기 -상대방의 ip 주소는 알고 있지만 mac 주소를 모를 때 사용되는 프로토콜 ARP 스푸..

FOUNDERS in JEJU 블록체인 X A.I 개발자 과정에 합격하다!

선배님의 추천을 받고 지원하게 된 파운더스 - 혁신기술 교육을 통한 진로탐색 프로그램! (링크는 이쪽: decenteruniv.com/founders-in-jeju/) 방학때 블록체인 스터디를 하면서 블록체인에 대해 굉장히 흥미롭게 생각하고 있던 차에 이런 프로그램을 보다니 심장이 쿵쿵 뛰었다. 블록체인은 방학 8주간 내내 블록체인 이론 + 실습을 해보았지만 아직 모르는 것도 너무 많고 궁금한 것도 너무 많은 기술이다. 아니 공부 할 수록 모르는게 더 생겼다는 것이 맞는 말 같다. 그래서 블록체인이라는 기술이 더 매력적으로 다가왔고 블록체인 개발자가 되어 자유자재로 다뤄보고싶은 욕구가 생겼다. 무튼, 이러 저러한 생각에 나는 이 프로그램에 꼭 합격해서 여러가지 지원을 받고 싶다는 생각을 했고, 그 일념 ..

리뷰 2020.09.14
728x90