분류 전체보기

    [Greedy] 숫자 카드게임

    [Greedy] 숫자 카드게임

    이것이 코딩 테스트다 with Python 기출 : 2019 국가 교육기관 코딩 테스트 Greedy알고리즘 문제 여러개의 숫자 중 가장 높은 숫자가 쓰인 카드 한 장을 뽑는 게임. 숫자가 쓰인 카드가 N X M 형태로 놓여있다. 각 행의 가장 낮은 숫자를 뽑은다음 그 숫자들 사이에 가장 큰 숫자를 출력한다. 입력 조건 첫째 줄에 숫자카드들이 놓은 행의 개수 N과 열의 개수 M이 공백을 기준으로 하여 각각 자연수로 주어진다. ( 1 ≤N, M ≤ 100) 둘째 줄부터 N개의 줄에 걸쳐 각 카드에 적힌 숫자가 주어진다. 숫자는 1 이상 10,000 이하의 자연수이다. 출력 조건 첫째 줄에 게임의 룰에 맞게 선택한 카드에 적힌 숫자를 출력한다. Solution n, m = map(int, input().spl..

    [Greedy] 큰수의 법칙

    [Greedy] 큰수의 법칙

    이것이 코딩 테스트다 with Python 기출 : 2019국가 교육기관 코딩 테스트 Greedy알고리즘 문제 다양한 수로 이루어진 배열이 있을 때 주어진 수들을 M번 더하여 가장 큰 수를 만드는 법칙. 단, 배열의 특정한 인덱스(번호)에 해당하는 수가 연속해서 K번을 초과하여 더해질 수 없다. 입력 조건 첫째 줄에 N (2 ≤ N ≤ 1,000) , M (1 ≤ M ≤ 10,000) , K(1 ≤ K ≤ 10,000)의 자연수가 주어지며, 각 자연수는 공백으로 구분한다. 둘째 줄에 N개의 자연수가 주어진다. 각 자연수는 공백으로 구분한다. 단, 각각의 자연수는 1 이상 10,000 이하의 수로 주어진다. 입력으로 주어지는 K는 항상 M보다 작거나 같다. 출력 조건 첫째 줄에 큰 수의 법칙에 따라 더해진..

    [Mac] Arduino Nano CH340(호환보드) 드라이버 설치

    [Mac] Arduino Nano CH340(호환보드) 드라이버 설치

    CH340 드라이버 설치 MacOS의 아두이노 나노 CH340 호환 보드의 드라이버 설치도 간단합니다 Window에서의 드라이버 설치 방법에 대해서는 여기로 이동해주시면 됩니다. Window에서 드라이버를 다운 곳과 동일한 여기로 이동합니다 아래로 내리면 매킨토시가 있습니다. 여기서 Pkg파일을 다운로드 한 다음 실행해줍니다 설치가 완료되면 재부팅 후 아두이노 워크스페이스를 열어줍니다 보드 설정 Window와 마찬가지로 보드는 아두이노 나노를 선택해줍니다 프로세서 설정 프로세서는 ATmega328P를 선택해줍니다 여기서도 문제가 생긴다면 Old Bootloader를 선택해줍니다 시리얼 포트 설정 여기서도 포트는 아두이노를 연결했을 때 생기는 포트로 설정하시면 됩니다 /dev/cu.usbserial-110..

    [Window] Arduino Nano CH340(호환보드) 드라이버 설치

    [Window] Arduino Nano CH340(호환보드) 드라이버 설치

    아두이노 나노와 라즈베리파이를 이용하여 작은 토이 프로젝트를 진행하는데 시작부터 문제가 생겼습니다...😢 정품인 줄 알고 주문했던 아두이노 나노 컨트롤 보드가 알고 보니 CH340 호환 보드짭보드였고... 아래와 비슷한 오류만 몇 번을 본지 모르겠습니다😭😭 ------------------------------------------------------------------------------------------ ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings] -----------------------------------------------------------------------------------------..

    [Window Terminal] 윈도우 터미널 커스텀

    [Window Terminal] 윈도우 터미널 커스텀

    WSL을 이용한 윈도우 터미널 꾸미기입니다 VMware와 같은 가상 머신을 이용하면 충돌하는 이슈가 있으니 주의하시기 바랍니다. 윈도우10에서는 기본적으로 powershell을 제공합니다. 여기를 관리자 모드로 들어가 줍니다. WSL 설치 아래의 명령어를 파워쉘에 작성하여 WSL활성화와 VM플랫폼을 활성화시켜줍니다. WSL활성화 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart VM플랫폼 활성화 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart 재부팅 후 여기에 들..

    [Spring] JWT(Json Web Token) 로그인 구현

    [Spring] JWT(Json Web Token) 로그인 구현

    JWT를 이용한 로그인 및 권한 검증 JWT를 이용하여 간단한 로그인과 회원가입 구현하고 User와 Admin을 권한 검증으로 구분하는 시간을 가져봅시다. 로그인 구현 DTO클래스 생성 LoginDto @Getter @Setter @Builder @AllArgsConstructor @NoArgsConstructor public class LoginDto { @NotNull @Size(min = 3, max = 50) private String username; @NotNull @Size(min = 3, max = 100) private String password; } Lombok 어노테이션 추가 Valid관련 어노테이션 추가 username, password 필드를 가지고 있는 DTO TokenDto ..

    [Spring] JWT(Json Web Token) 예제

    [Spring] JWT(Json Web Token) 예제

    이전 게시글에 이어 간단하게 JWT를 이용하여 실습 예제를 만들어 보겠습니다. JWT패키지 생성 및 토큰 설정 TokenProvider클래스 생성 토큰 생성 및 토근 유효성 검증을 담당합니다. @Component public class TokenProvider implements InitializingBean { private final Logger logger = LoggerFactory.getLogger(TokenProvider.class); private static final String AUTHORITIES_KEY = "auth"; private final String secret; private final long tokenValidityInMilliseconds; private Key key..

    [Spring] JWT(Json Web Token) 초기설정

    [Spring] JWT(Json Web Token) 초기설정

    프로젝트 생성 자바 버전은 11로 하였고 아래의 Dependencies를 추가해줍니다. Spring Web Spring Security Spring Data JPA H2 Database Lombok Validation 테스트 컨트롤러 생성 해당 프로젝트가 잘 작동하는지 테스트 하는 컨트롤러를 만들어줍니다. @RestController @RequestMapping("/api") public class HelloController { @GetMapping("/hello") public ResponseEntity hello(){ return ResponseEntity.ok("hello"); } } Postman으로 GET요청을 했을때 401인증오류가 뜨는 것을 볼수 있습니다. SecurityConfig를 생성..

    JWT(Json Web Token)란?

    JWT(Json Web Token)란?

    JWT란? Json 객체를 이용하여 저장하는 웹 토큰으로 인증에 필요한 정보들을 Token에 담아 인코딩 하여 사용합니다. 헤더 시그니처를 해싱하기 위한 알고리즘 정보들이 담겨있음 페이로드 서버와 클라이언트가 주고받는 시스템에 실제로 사용될 정보를 담고 있음 시그니처 토큰의 유효성을 검증하기 위한 문자열 장점 인증서버, 데이터 스토어에 대한 의존성이 없음 BASE64 URL SAFE Incoding → URL, COOKIE, HEADER 모두 사용 가능 단점 Payload의 정보가 많이 지면 네트워크 사용량 증가하여 데이터 설계 고려가 필요함 토큰이 클라이언트에 저장되기 때문에 서버에서 클라이언트 토큰을 조작할 수 없음 Reference JWT.IO JSON Web Tokens are an open, i..