일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- telegraf
- influxdb 설치
- selinux port 등록
- InfluxDB
- c++ 정규식
- c3 step graph
- semanage
- c3 축 가리기
- 백준
- centos pyhon 설치
- 1697
- subporcess path
- g++ 업데이트
- grafana dashboard
- python os
- 정규식 문자열 출력
- gcc regex
- 정규식 컴파일
- c3 초
- 정규식 활용
- c3 축 없애기
- CentOS7
- linux시간으로 변경
- snmp test
- c3 second
- python popen
- python subprocess
- snmp
- regex_search
- gcc 업데이트
- Today
- Total
목록분류 전체보기 (560)
리셋 되지 말자
코드 n = int(input()) if n == 1: print(1) exit() cnt = 2 sum_num = 12 total_sum = 7 while n > total_sum: cnt += 1 total_sum = total_sum + sum_num sum_num += 6 print(cnt) 설명 그림의 규칙을 파악하면 수열이 된다. 1, 7, 19, 37, 61 을 기준으로 잡으면 1~7 : 6, 7~19 : 12, 19~37 : 18, 37~61 : 24 6, 12, 18, 24 순서로 차이가 생기게 된다. 6씩 증가하는 sum_num을 이용해 while 문을 돌 때마다 total_sum에 더해준다. 그리고 cnt도 1씩 증가한다. 그러다가 입력한 n이 total_sum보다 커지면 최소거리인 ..
코드 m, n = map(int, input().split()) arr = [0 for _ in range(n+1)] arr[0] = 1 arr[1] = 1 for i in range(2, n+1): mul_num = 2 while i*mul_num = m: print(idx) 설명 제곱근 까지만 검사하는 코드를 넣었는데 시간초과가 떠서 에라토스테네스의 체로 해결 0이 n개만큼 있는 배열을 선언한 뒤, 2~n의 배수에 해당하는 idx의 수만 1로 수정 m보다 큰 idx를 가지고 있고, 해당 idx 위치의 수가 0이면 출력
코드1 - 배열 노가다 def func(): h, w, n = map(int, input().split()) arr = [ [num+1+((floor+1)*100) for num in range(w)] for floor in range(h) ] cnt = 1 flag = False for room in range(len(arr[0])): for floor in range(len(arr)): if cnt == n: print(arr[floor][room]) flag = True break cnt += 1 if flag: break n = int(input()) for _ in range(n): func() 결과 설명 101호 부터 시작하도록 배열을 선언해준다. 101호, 201호, 301호 ... 순서로 ..
코드1 from collections import Counter n = int(input()) cnt = 0 num = 1 while cnt != n: ls = list(str(num)) cd = Counter(ls) if cd.get('6') and cd['6'] >= 3: idx_save = [] for idx, c in enumerate(ls): if c == '6': idx_save.append(idx) start = idx_save[0] cnt_6 = 0 for i in range(1, len(idx_save)): if start+1 == idx_save[i]: cnt_6 += 1 start = idx_save[i] if cnt_6 == 2: cnt+=1 else: start = idx_save..
코드 import sys n = int(input()) arr = [] for _ in range(n): arr.append(int(sys.stdin.readline())) arr.sort() for num in arr: print(num) 설명 입력 횟수가 (1 ≤ N ≤ 1,000,000) 이라서 일반 input()을 사용하면 시간초과가 난다 sys 모듈의 stdin.readline()을 이용하면 입력이 빨라져서 시간초과를 피할 수 있다
코드 from itertools import combinations n, m = map(int, input().split()) arr = list(map(int, input().split())) max_num = 0 for com in combinations(arr, 3): sum_com = sum(com) if sum_com
코드 n = int(input()) flag = False for num in range(n+1): string_num = str(num) if num + sum(list(map(int, list(string_num)))) == n: print(num) flag = True break if not flag: print(0) 설명 생성자는 타겟 숫자보다 커질 수 없으므로 범위를 1부터 타겟 숫자+1 까지 브루트포스로 전부 검색
코드1 - Counter from collections import Counter n = int(input()) arr1 = map(int, input().split()) arr1 = Counter(arr1) m = int(input()) arr2 = map(int, input().split()) for num in arr2: if num in arr1: print('1') else: print('0') 첫 배열을 Counter 를 이용해 dict 자료구조로 바꾼 뒤, in으로 탐색한다. O(1) 이므로 통과 코드2 - set n = int(input()) arr1 = map(int, input().split()) arr1 = set(arr1) m = int(input()) arr2 = map(int, ..