구글 앱 비밀번호 생성하기
·
개발
이 글을 시작하기 앞서, 앱 비밀번호를 만드려는 계정의 2FA가 활성화 되어있어야만 앱 비밀번호를 생성할 수 있다!만약 앱 비밀번호를 생성할 수 없다면 2FA가 되어있는지 확인해보길 바란다. https://myaccount.google.com/apppasswords 위 사이트로 접속하게 되면 아래와 같은 화면이 뜬다.앱 이름을 아무렇게나 입력한다.앱 이름을 작성했다면 만들기 버튼을 클릭한다.이런식으로 앱 비밀번호가 생성되었다.참고로 앱 비밀번호는 생성할때 최초 한번만 확인할 수 있기때문에, 만약 이 비밀번호를 잃어버리게 된다면 새로 앱 비밀번호를 생성해야하니 주의하도록 하자!
[BOJ] 24313번 알고리즘 수업 - 점근적 표기 1
·
알고리즘/PS
링크: https://www.acmicpc.net/problem/24313문제오늘도 서준이는 점근적 표기 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자.알고리즘의 소요 시간을 나타내는 O-표기법(빅-오)을 다음과 같이 정의하자.O(g(n)) = {f(n) | 모든 n ≥ n0에 대하여 f(n) ≤ c × g(n)인 양의 상수 c와 n0가 존재한다}이 정의는 실제 O-표기법(https://en.wikipedia.org/wiki/Big_O_notation)과 다를 수 있다.함수 f(n) = a1n + a0, 양의 정수 c, n0가 주어질 경우 O(n) 정의를 만족하는지 알아보자.입력첫째 줄에 함수 f(n)을 나타내는 정수 a1, a0가 주어진다. $$(0 ≤ ..
학교 시스템 속 취약점 분석
·
분석/KNU
보호되어 있는 글입니다.
[BOJ] 10464번 XOR
·
알고리즘/PS
링크: https://www.acmicpc.net/problem/10464문제S에서 F까지의 모든 정수를 XOR한 값은 무엇일까?입력입력의 첫 번째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 1,000)가 주어진다.다음 T 개의 줄에는 두 개의 정수 S와 F가 주어진다. (1 ≤ S ≤ F ≤ 1,000,000,000)출력각 테스트 케이스마다 S에서 F까지의 모든 정수를 XOR한 값을 출력한다.시간 제한1초첫번째 시도T = int(input())_ = [list(map(int, input().split())) for i in range(T)]for S, F in _: num = S for i in range(S+1, F+1): num ^= i print(num)문제를 처음..
[알고리즘] 에라토스테네스의 체
·
알고리즘/Number Theory
에라토스테네스의 체는 무엇인가?에라토스테네스의 체는 소수를 구하는 알고리즘으로, 범위 내의 소수를 판별할때 유용하게 사용되는 알고리즘이다.소수를 마치 체로 걸러내는 방식과 유사하다고 하여, 에라토스테네스의 체라는 이름이 붙었다.작동 원리1. 1부터 N까지 숫자 배열을 생성한다.2. 1은 소수가 아니니 제거한다.3. 2부터 시작하여 그 수를 제외한 배수들을 다 제거한다.4. 그 후 1씩 증가하여 남은 숫자들도 3번과 똑같은 방식으로 진행한다. 예를 들어, 1부터 100까지의 범위에서 소수를 판별하고 싶다고 하자. 다음과 같이 1부터 100까지의 배열을 생성한다.1234567891011121314151617181920212223242526272829303132333435363738394041424344454..
[LDPlayer] 루트 권한 없이 쉘 루트 권한 얻기
·
안드로이드
해당 글에서는 루트 권한 없이 쉘에서 루트 권한을 얻는 방법을 소개하고자 한다. 여기서 사용된 에뮬레이터는 LDPlayer 9 이다. 초기 설정에서는 Root 권한 사용이 비활성화 된 상태이다.그러므로 쉘에서는 루트 권한을 얻을 수 없다. 하지만 이를 해결할 수 있는 방법이 있다.바로 안드로이드의 시스템 속성을 변경하면 된다.LDPlayer 9 기준으로 C:\LDPlayer\LDPlayer9\system.vmdk 파일을 연다.ro.secure가 1로 설정되어 있는 상태인데, 이를 0으로 바꾼다. 변경 사항을 저장하고 에뮬레이터를 재부팅 한 이후에 adb shell에 접근해보자. $로 되어있던 표기가 기본적으로 #으로 표기되는걸 볼 수 있다.쉘에서 루트 권한을 얻었다는 뜻이다. 루트 권한 없이 쉘에서 ..
[파이썬] ඞ 어몽어스 캐릭터 출력하기!!
·
개발
코드print(chr(sum(range(ord(min(str(not())))))))동작 과정1. not()not 연산자는 피연산자가 비어있다면 True를 반환한다.여기서 피연산자는 (), 빈 튜플이다. 2. str(not())str(True) 은 "True"를 반환한다. 3. min(str(not()))min("True") 에서 아스키코드를 기반으로 하여 가장 작은 크기인 "T"를 반환한다. 4. ord(min(str(not())))ord("T") 는 T의 아스키코드 값 즉 84를 반환한다. 5. range(ord(min(str(not()))))range(84) 는 range(0, 84)를 의미한다. 6. sum(range(ord(min(str(not())))))sum(1,2,...,83) 즉, 1부터 ..
[파이썬] 내장 함수 round()에 대하여
·
개발
파이썬의 내장 함수 중 round() 함수가 존재한다. 이 함수는 숫자의 반올림을 도와주는 함수이다.round(number, ndigits=None) 이런 형태의 매개변수를 입력받고 있고, 여기서 number는 반올림할 수, ndigits는 소수 n번째 자리에서 반올림을 할지 정해주는 거다. 아래는 round 함수에 대한 예시 코드이다.num = round(1.3)print(num) # 1ndigits에 값이 들어가지 않으면 소수 첫째 자리에서 반올림이 진행된다. num = round(3.14159, 2)print(num) # 3.14ndigits를 입력해 주니 소수 셋째 자리에서 반올림이 진행되는 걸 확인할 수 있다. 만약 아래와 같은 코드를 작성하게 된다면 결과가 어떻게 될까?print(round(1..