목록전체 글 (65)
Hyun Seup Jo
// 입력된 정수의 각 자릿수를 더하는 프로그램 #define _CRT_SECURE_NO_WARNINGS #include #include #include int findsum(char*, int); int processing(int); char buffer[10] = { 0, }; int main() { int num, x, length; printf("\nEnter a number: "); scanf("%d", &num); length = processing(num); length -= 1; x = findsum(buffer, length); printf("Sum of the ditgits of %d is: %d", num, x); memset(buffer, 0, sizeof(buffer)); retu..
Pulisher #!/usr/bin/env python3 import rospy from std_msgs.msg import String from serbot_teleop.msg import * import sys, select, termios, tty msg = """ Control Your SERBOT! --------------------------- Moving around: w a s d w/s : forward/backward accell velocity a/d : left/right steering else : stop CTRL-C to quit """ def getKey(): tty.setraw(sys.stdin.fileno()) rlist, _, _ = select.select([sys...
NVIDIA Jetson Xavier NX ROS Melodic Ubuntu 18.04 Platform: AIOT Serbot Prime X 0. RPLiDAR A2, USB 포트 권한 부여 $ ls -l /dev |grep ttyUSB 위의 명령어를 입력하여 라이더가 연결된 USB 포트의 이름을 가장 먼저 확인합니다, $ sudo chmod 666 /dev/ttyUSB0 라이더가 연결된 USB포트에 chmod 명령어를 통해 실행권한을 부여합니다. chmod의 권한부여에 관한 설명은 아래 상세히 설명되있습니다. https://nachwon.github.io/shell-chmod/ [Shell] chmod - 파일 및 폴더의 권한 설정 chmod 셸 명령어는 파일 또는 폴더의 권한을 변경할 때 사용한다. ..
# 선택 정렬 N = int(input()) num_list = [] for i in range(N): # 정렬하려는 값 N개만큼 입력 받기 num_list.append(int(input())) for i in range(N -1): # outer loop, 마지막 값은 자동정렬 되므로 N-1까지 min_idx = i for j in range(i + 1 , N): # 최소값 탐색 loop, i 다음 값 부터 비교 시작하므로 i + 1부터 시작 if num_list[min_idx] > num_list[j]: min_idx = j # 최소값 인덱스 업데이트 num_list[i], num_list[min_idx] = num_list[min_idx], num_list[i] # 위치 교체 for element ..
N = int(input()) dunchi = [] for i in range(N): dunchi.append(tuple(map(int, input().split()))) # 완전 탐색해가며 랭크 업데이트 for i in dunchi: rank = 1 for j in dunchi: if i[0] < j[0] and i[1] < j[1]: rank += 1 print(rank, end = ' ')
N = int(input()) begin = N - len(str(N)) * 9 flag = 0 if begin < 1: begin = 1 for i in range(begin, N): res = i for j in str(res): res += int(j) # 분해합 구하기 if res == N: flag = 1 print(i) break if flag == 0: print(0) 분해합을 찾기 위해서 굳이 0부터 탐색할 이유가 없다. 각 자릿수의 최대로 올수 있는 숫자는 9이다. 216라는 숫자를 예를 들어 설명하면 생성자를 탐색하기위해 시작할 수 있는 최댓값은 216 - (9 + 9 + 9) = 162인것이다. 따라서 162부터 216까지 탐색하여 분해합을 만족하는 값을 찾으면 되는 것이고 res +..
N, M = map(int, input().split()) card_list = list(map(int, input().split())) res= [] for i in range(len(card_list)): for j in range(i + 1, len(card_list)): for k in range(j + 1, len(card_list)): if (card_list[i] + card_list[j] + card_list[k])
# 666, 1666, 2666, 3666, 4666, 5666, ..., 10666, ..., 16660, 16661, ... # brute force Algorithm N = int(input()) number, cnt = 665, 0 while True: number += 1 if "666" in str(number): cnt += 1 if cnt == N: print(str(number)) break 영화제목은 666부터 시작하므로 굳이 1부터 차례대로 검사할 필요가 전혀없다. 따라서 number 변수를 665로 초기화 시키고 무한 루프내에서 number값을 1씩 증가 시켜가면서 "666"이 str(number)안에 존재한다면 cnt를 한다. cnt와 입력받은 N값이 같아지는 순간이 N번째 영화를..
# 반복문을 이용한 풀이 n = int(input()) fibonacci = [0, 1] if n == 0 or n == 1: print(fibonacci[n]) else: for i in range(n - 1): fibonacci.append(fibonacci[i] + fibonacci[i + 1]) print(fibonacci[-1]) # 재귀호출을 이용한 풀이 n = int(input()) def fibonacci(n): if n == 0 or n == 1: return n else: return fibonacci(n - 1) + fibonacci(n - 2) print(fibonacci(n))