DongZip
close
프로필 사진

DongZip

github: @dongx0915

  • 분류 전체보기 (101)
    • 안드로이드 (49)
      • 개발 도구 (0)
      • 이론 (33)
      • 커스텀 뷰 (0)
      • 에러 해결 (4)
      • Hilt (2)
      • Compose (5)
      • 코드 저장 (1)
    • 알고리즘 (19)
      • 백준 (19)
    • 프로젝트 관리 & 협업 (4)
      • Github (4)
    • 독서 (18)
      • 코틀린 코루틴 (18)
      • 객체지향의 사실과 오해 (0)
    • 백엔드 (2)
      • Docker (2)
      • Spring Boot (0)
    • 디자인 (1)
    • 보안 (2)
      • SQL Injection (2)
    • 언어 (0)
      • JAVA (3)
  • 홈
  • 방명록
  • 깃허브
공지사항
전체 카테고리
  • 분류 전체보기 (101)
    • 안드로이드 (49)
      • 개발 도구 (0)
      • 이론 (33)
      • 커스텀 뷰 (0)
      • 에러 해결 (4)
      • Hilt (2)
      • Compose (5)
      • 코드 저장 (1)
    • 알고리즘 (19)
      • 백준 (19)
    • 프로젝트 관리 & 협업 (4)
      • Github (4)
    • 독서 (18)
      • 코틀린 코루틴 (18)
      • 객체지향의 사실과 오해 (0)
    • 백엔드 (2)
      • Docker (2)
      • Spring Boot (0)
    • 디자인 (1)
    • 보안 (2)
      • SQL Injection (2)
    • 언어 (0)
      • JAVA (3)
인기 글
전체 방문자
오늘
어제
[ 백준 10814 ] - 나이순 정렬 (Java)

[ 백준 10814 ] - 나이순 정렬 (Java)

10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 www.acmicpc.net 문제 이해 & 기본 개념 회원의 나이와 이름이 입력된다. 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 문제 중요 포인트 입력 데이터를 클래스로 묶는 것 Comparable 인터페이스를 사용하여 정렬 기준을 재정의하는 것 최종 풀이 Comparable 인터페이스의 compareTo 메소드를 오버라이드하면 정렬 기준을 변경할 수 있다. compareTo의 반환 값이 양수이면 두 객체를 swap한다. class User im..

  • format_list_bulleted 알고리즘/백준
  • · 2023. 2. 8.
[ 백준 1676 ] - 팩토리얼 0의 개수 (Java)

[ 백준 1676 ] - 팩토리얼 0의 개수 (Java)

1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제 이해 & 기본 개념 팩토리얼의 결과 값에서 끝에 0의 개수를 구하는 문제 N이 최대 500까지 들어오므로 팩토리얼을 직접 계산하는 방법은 불가 BigInteger를 사용하면 가능하긴 하겠지만, 좋은 방법은 아닌 듯함 중요 포인트 팩토리얼을 계산하지 않고 0의 개수를 알아내는 방법을 찾는게 중요 어떤 경우에 끝에 0이 붙는지를 생각해보면 쉽게 규칙을 찾을 수 있다. 최종 풀이 끝자리에 0이 붙는 경우는 10(2 x 5)을 만났을 때이다. 2와 5가 곱해지는 순간 10이 되어 끝자리에 0이 생기게 된다. 즉, 2x5가 몇 번 나오는지만 알면 0이..

  • format_list_bulleted 알고리즘/백준
  • · 2023. 2. 8.
[ 백준 16964 ] -  DFS 스페셜 저지(Java)

[ 백준 16964 ] - DFS 스페셜 저지(Java)

16964번: DFS 스페셜 저지 첫째 줄에 정점의 수 N(2 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N-1개의 줄에는 트리의 간선 정보가 주어진다. 마지막 줄에는 DFS 방문 순서가 주어진다. DFS 방문 순서는 항상 N개의 정수로 이루 www.acmicpc.net 문제 이해 & 기본 개념 그래프와 방문 순서가 주어진다. 해당 그래프에서 입력받은 순서가 dfs로 방문 가능한지를 체크하는 문제 해당 문제는 방문 순서에 대한 기준을 두지 않았다. 즉, 어떤 순서로 방문을 해도 dfs로 방문 가능한 순서이기만 하면 된다. 중요 포인트 n이 10만까지 들어오므로, dfs를 완전히 수행하면 시간 초과 dfs로 접근하되, 수행 시간을 줄여아한다. 최종 풀이 dfs의 경우 여러 자식들 중 어떤 자식을 ..

  • format_list_bulleted 알고리즘/백준
  • · 2023. 2. 4.
[ Secure Coding ] SQL Injection (SQL 인젝션) PreparedStatement, Statement- Java (2)

[ Secure Coding ] SQL Injection (SQL 인젝션) PreparedStatement, Statement- Java (2)

2023.01.31 - [Secure Coding/SQL Injection] - [ Secure Coding ] SQL Injection (SQL 인젝션) - Java [ Secure Coding ] SQL Injection (SQL 인젝션) - Java SQL Injection SQL Injection은 입력 값에 대한 유효성 검증을 하지 않을 경우, 공격자가 입력 폼 및 파라미터에 쿼리문을 조작하여 정보를 열람하거나 데이터를 조작할 수 있는 해킹 기술이다. SQL Injecti dongx2.tistory.com 이전 글에서 SQL Injection에 대해서 포스팅 했었는데, 이번 글에선 PreparetStatement와 Statement의 차이점과 실제 예시들을 다루고자한다. PreparedState..

  • format_list_bulleted 보안/SQL Injection
  • · 2023. 1. 31.
[ Secure Coding ] SQL Injection (SQL 인젝션) - Java

[ Secure Coding ] SQL Injection (SQL 인젝션) - Java

SQL Injection SQL Injection은 입력 값에 대한 유효성 검증을 하지 않을 경우, 공격자가 입력 폼 및 파라미터에 쿼리문을 조작하여 정보를 열람하거나 데이터를 조작할 수 있는 해킹 기술이다. SQL Injection 예시 1. 안전하지 않은 코드 예시 코드를 보면 외부 입력(gubun)을 아무런 검증 없이 바로 쿼리문에 집어넣고 있다. 이때, 외부 입력(gubun)이 ' OR '1'='1 과 같이 들어오게 된다면, 전체 쿼리문은 아래와 같이 만들어진다. "SELECT * FROM board WHERE b_gubun = '' OR '1' = '1'"; 개발자가 어떤 조건을 걸어놨던 간에 OR '1' = '1'이라는 구문이 추가되어 항상 참이 되는 SQL문이 탄생한다. 실행 결과 위와 같은..

  • format_list_bulleted 보안/SQL Injection
  • · 2023. 1. 31.

[ 안드로이드 ] BottomSheetDialog에서 Fragment로 값 전달

BottomSheetDialog에서 Fragment로 값 전달하기 안드로이드 앱 개발 중 Fragment에서 BottomSheetDialog를 띄우고, 해당 BottomSheetDialog에서 입력된 값을 가져와야하는 상황이 생겼다. 당연히 DataBinding으로는 해결이 안되므로, 인터페이스를 활용한다. 1. 데이터 전달을 위한 인터페이스 생성 AddClassFragment.kt (BottomSheetDialogFragment) class AddClassFragment : BottomSheetDialogFragment() { /** AddClassBottomSheet의 데이터를 전달하기위한 인터페이스 */ interface BottomSheedDataReciever{ fun setClassDatas(..

  • format_list_bulleted 안드로이드/이론
  • · 2022. 10. 3.
  • navigate_before
  • 1
  • 2
  • 3
  • navigate_next
Copyright © dongx._.2 모든 권리 보유.
SKIN: Copyright © 쭈미로운 생활 All rights reserved. Designed by JJuum.
and Current skin "dev-roo" is modified by Jin.

티스토리툴바