본문 바로가기

전체 글88

백준 25192번 python 입력값에 중복이 나오지 않는다면 count++를 해주고 "ENTER"가 나오면 list를 초기화해주면 된다. 다만 관건은 시간복잡도로, list를 이용하여 중복을 제거, (x not in lst), count, index 등을 이용한다면 시간복잡도는 O(n)이 된다. 거기다가 위에서 for문을 돌려야 하므로 결과적으로는 O(n^)이 된다. 즉, list가 아닌 시간복잡도 측면에서 우월한 ( x not in set의 값이 O(1)인) 집합(set) 또는 (사전)dictionary를 이용해야 한다. 풀이: 입력의 최대값은 100,000번 이므로 시간을 줄이기 위해 sys.stdin.readline()을 이용했다. 해당 구문을 사용하여 입력을 받으면 개행문자인 "\n"도 들어오므로 rstrip()을 통해 지워.. 2023. 10. 23.
백준 1037번 python 1과 N은 주어지지 않고 나머지 수만 주어진다. ex) 8의 약수는 1, 2, 4, 8이기 때문에 (4, 2)가 입력된다. 풀이: N의 약수가 순서대로 주어지면 마주보는 값의 곱은 N이다. ex) 1*8 = 8, 2*4 = 8 고로 입력된 값의 최대값과 최소값을 곱해주면 완료. 제곱수 의 경우: ex)25 list의 최소값은 5, 최대값도 5이기 때문에 동일한 결과가 출력된다. N = int(input()) lst = list(map(int, input().split(" "))) print(min(lst)*max(lst)) 2023. 10. 23.
백준 1037번 java 1과 N은 주어지지 않고 나머지 수만 주어진다. ex) 8의 약수는 1, 2, 4, 8이기 때문에 (4, 2)가 입력된다. 풀이: N의 약수가 순서대로 주어지면 마주보는 값의 곱은 N이다. ex) 1*8 = 8, 2*4 = 8 고로 Array를 만들어서 sorting 하고 0번째 인덱스와 마지막 인덱스 값을 곱해주면 완료. 제곱수 의 경우: ex)25 Array에 입력되는 값인 5를 제곱하여 출력되기 때문에 값은 동일하게 출력된다. import java.util.Scanner; import java.util.Arrays; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N.. 2023. 10. 23.
[포스코x코딩온] 풀스택 부트캠프 1주차 정리 -1 (Git, Github) 1일차 이해 Git : 로컬에서 소스를 저장할 수 있는 프로그램. 일반 파일의 경우 덮어쓰면 이전 파일이 사라져 복구하는데 애를 먹지만 Git의 경우 comment와 함께 이전 수정 히스토리가 저장되어있어 복구가 용이하다. Github : Git의 커뮤니티 버전. Git에서 저장한 것을 Github에 업로드, 저장 가능, Github에 있는 코드 또한 다운로드 가능. 권한이 있는 사람은 접근, 수정 등이 가능하여 협업 가능. BOX 같은 공유폴더 개념과 비슷하다고 생각하면 될 듯하다. git add "파일명" // 작업공간의 파일, 수정사항을 Staging 영역으로 올림 git reset "파일명" // Staging 영역으로 올린 파일을 다시 되돌려 놓음 git reset 전부 취소할 경우 git ad.. 2023. 10. 23.