백준알고리즘의 인기문제 2위에 랭크되어있는 5543번 상근날드입니다. 풀이는 간단합니다. 5개의 입력을 받고, 앞 3개의 입력을 햄버거로 가정 뒤 2개의 입력을 음료수로 가정합니다. 앞 3개의 입력중 최소값을 구하고 뒤 2개의 입력중 최소값을 구합니다. 그 두개의 최소값을 더한 후 -50을 해줍니다. 그 값을 출력해주면 정답입니다. if 를 이용하여 풀이하였습니다. https://www.acmicpc.net/problem/5543 5543번: 상근날드 문제 상근날드에서 가장 잘 팔리는 메뉴는 세트 메뉴이다. 주문할 때, 자신이 원하는 햄버거와 음료를 하나씩 골라, 세트로 구매하면, 가격의 합계에서 50원을 뺀 가격이 세트 메뉴의 가격이 된다. 햄버거는 총 3종류 상덕버거, 중덕버거, 하덕버거가 있고, 음..
정렬 문제 ( 오름차순 내림차순 ) 입력 - n개의 숫자들의 배열이다. 출력 - 입력된 숫자의 배열이 크기순을 조건으로 만족하도록 나열한 결과 선택정렬 알고리즘 선택정렬은 무엇인가? - 선택해서 정렬하는 알고리즘이다. 선택을 할때 무엇을 선택하는지가 중요한 핵심이 된다. 1. 최소값 선택 정렬 (결과 : 오름차순) 2. 최대값 선택 정렬 (결과 : 내림차순) 최소값 선택 정렬의 알고리즘 1. 정렬되지 않는 숫자 중 가장 작은 숫자 선택 ( 최소값 ) 2. 선택한 숫자를 정렬되지 않은 숫자들 중 첫 번째 숫자와 자리를 바꾸면 최소값이 가장 앞으로감 3. 첫번째를 제외하고 그 뒤에서부터 정렬되지 않은 숫자들 중 가장 작은 숫자 선택, 가장 앞 +1 로 보냄 4. 반복 ex) 5 , 4 , 2 , 1, 3 첫..
컴퓨터 알고리즘이란? 문제를 해결하는 방법을 의미한다. 컴퓨터 알고리즘을 배우는 이유는 그 문제를 효율적으로, 단계적으로 해결하기 위한 방법을 익히기 위해서이다. 컴퓨터 알고리즘과 혼동하는것이 컴퓨터 언어와 컴퓨터 프로그램인데 컴퓨터 언어 - 컴퓨터와 대화하기 위한 언어 - 그 자체이다. (EX. C, C++, JAVA, Pthyon 등) 컴퓨터 알고리즘 - 컴퓨터를 이용해서 문제를 푸는 절차 (ex. 정렬, 해시, 최단거리 등 ) 컴퓨터 프로그램 - 특정 작업을 위한 수행을 하는 것을 의미한다. 컴퓨터를 이용해서 문제해결을 원한다면 어떻게 해야할까? 우선 컴퓨터에게 할 일을 알려줘야한다. 그리고 컴퓨터가 할 수 있는 일이어야한다. 이러한 것을 분석하는 컴퓨터 알고리즘 분석 4단계가 있다. 1. 문제 정..
리눅스에서 파이썬을 설치하여 cryto를 사용하려면 python2 버전같은경우는 그냥 검색해서 나오는대로 하면 잘 된다. 하지만 python3 는 다른방법으로 설치하여야 하는데, 두개의 블로그를 참고하고 방법을 찾아내었다. 일반적으로 python2 는 pip install pycrypto 명령어를 통해 cryto 모듈을 설치할 수 있다. 하지만 python3 는 pip3 를 사용하여야 python3에 맞는 버전이 설치된다. 또한 cryto 모듈의 설치 명령어도 pycryptodome 으로 바뀌었다. ------------------------------------------------------------ cryptodome 설명서 : http://pycryptodome.readthedocs.io/en/..
if(videoInfoArrayList.get(position).url.contains("youtube")) String 문자열 = "www.youtube.com/1234" String 문자열 2 = "youtube" if(문자열.contains(문자열2)) //문자열이 포함 된 경우 true 반환 else //문자열이 포함되어 있지 않은경우 false 반환 그 외 유용한 패턴 , // matches를 이용하여 정규 표현식으로 문자열에 숫자가 있는지 확인 if(txt3.matches(".*[0-9].*")) System.out.println("숫자 있음!"); else System.out.println("숫자 없음!"); 출처: https://fruitdev.tistory.com/72 [과일가게 개발자]..
최대 100명까지 접속 가능한 서버와 서버를 통해 실시간 채팅은 유지하면서 다양한 기능을 사용하는 프로그램입니다. 최대한 실시간 채팅 기능을 유지하는 방향으로 만들었습니다. Flag 를 통해 더 많은 기능을 확장 할 수 있는 채팅 프로그램입니다. 구현된 기능 목록 1. 실시간 채팅 (닉네임 변경 가능) 2. 더치 페이 기능 (계산기 활용) 3. 미니 게임 기능 (가위바위보 활용) 4. 파일 공유 기능 (파일 전송 활용) 다중 접속 쓰레드 및 채팅은 아래의 블로그를 참고로 만들었습니다. https://good-coding.tistory.com/17 #include #include #include #include #include #include #include #include #include #define ..