728x90

전체 글 199

[SWAE- Python] 3834 숫자 카드 문제

배열의 위치와 관련하여 연습할때 좋은 문제인듯 하다. 이번 문제의 주요 핵심은 12번 줄의 Ai = [int(num) for num in input()] - 이 부분이다. 이녀석은 배열 하나하나에 값을 넣어주는 친구이다. 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 # 문제 # 가장 많이 적힌 카드 숫자와 몇장 인지 출력 # 만약 카드 장수가 같을때는 큰 숫자를 출력 # # 입력 # 테스트케이스 # 장수 # 카드값 T = int(input()) # 1~50 for tc in range(1,T+1): N = int(input()) # 5~100 Ai = [int(num) for num in input()] # a[0] = 4,a[1]..

알고리즘/SWAE 2021.02.09

[Python] 기본 입출력

짧고 굵게 입력 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #문자열 1개 입력 받기 #tmp = input() #문자열 통으로 tmp에 한줄 입출력한다. #print(tmp) #정수 1개 입력 받기 # N = input() # print(N, type(N)) #정수 여러개 입력 받기( 2가지) #예시 - 4 5 6 7 8 9 # a,b,c,d,e,f = map(int,input().split()) # print(a,b,c,d,e,f) # # arr =list(map(int,input().split())) # print(arr) #한줄로 들어오는 입력 쪼개기 (문자열버전, 정수 버전) #asfdjheffjkashdfjk 입력이 들어오면?..

[Python] 배열

배열의 필요성 - 다수의 변수로는 하기 힘든 작업을 쉽게 할수있도록 도와준다. 1차원 배열 - 별도의 선언 방법이 없으면 변수에 처음 값을 할당할 때 - 배열 이름 (리스트 이름) Arr = list(), Arr = [] 1차원 배열 접근 Arr[0] = 10; Arr 의 0번재 원소에 10을 저장 Arr[idx] = 20; Arr의 idx 번째 원소에 20을 저장 정렬 - 2개 이상의 자료를 특정 기준에 의해 작은 값부터 큰 값( 오름차순 : ascending), 혹은 그반대 내림차순(descending) 으로 재배열 종류 - 버블 , 카운팅, 선택, 퀵, 삽입, 병합 버블 - 인접한 두 개의 원소를 비교하며 자리를 계속 교환하는 방식 과정 1. 첫 번째 원소부터 오름 / 내림 선택 (기본은 오름)하여..

[JAVA] 알고리즘 String

완전 검색(완전 탐색, DFS)// 펙토리얼이므로 시간 복잡도가 굉장히 낮습니다. - 문제의 해법으로 생각할 수 있는 모든 경우의 수를 나열해보고 확인하는 기법 - Brute-force 혹은 generate-and-test 기법이라고도 불린다. - 모든 경우의 수를 테스트한다. -상대 적으로 설계는 빨리할수있다. - 경우의 수가 상대적으로 작을 때 유용하다. 문제 예시 1)Baby-gin Game. 0~9 사이의 숫자 카드에서 임의의 카드 6장을 뽑았을 때, 3장의 카드가 연속적인 번호를 갖는 경우를 run이라 하고, 3장의 카드가 동일한 번호를 갖는 경우를 triplet이라고 한다. 그리고, 6장의 카드가 run,triplet으로만 구성된 경우를 baby-gin으로 부른다 6자리의 숫자를 입력 받아 b..

[JAVA] 알고리즘 Array (2)

java.lang.StringBuilder ex) StringBuilder sb = new StrinBuilder(); append() - sb.append 를 통해 문자열을 합칠수가있습니다. toString() - 이거슨 sb를 출력할때 쓸수있는거십니당, 출력을할떄 sb.toString() 을 넣어주면 sb.append 로 저장한 값을 출력합니다. 알고리즘을 풀때 tip 1. 이해하기 2. 자신의 익숙한 용어로 재정의 3. 계획세우기 ( 틀을 만들어보세요) 4. 검증해보기 5. 프로그램 구현 6. 다시 확인해보며 개선 방법이있나? 찾아보기. 전략 비슷한문제 생각하기 단순하게 flat 하게 생각해보기 그림으로 가시화시키기 수식으로 가능할까? 문제 분해시키기(세분화) 뒤에서부터 생각해볼까? 틍정 형태의 답..

[SW Expert] (D3) 원재의 메모리 복구하기

원재씨가 실수로 메모리를 초기화했다. 다행이 원래 메모리가 무슨 값이였는지 알고있다고한다. 하지만 문제가 bit 중 하나를 골라 0, 1인지 결정하면 해당 값이 메모리의 끝까지 덮어씌우는 것이다. ex) 0 1 0 0 ^ 이 3번재 bit를 골라 1로 설정하면 0 1 1 1 이렇게 그자리부터 1로 덮어씌워지는 것. 그렇다면 원래상태가 주어 질때 초기화 상태에서 원래 상태로 돌아가는데 최소 몇 번이나 고쳐야 하는지 계산해보아라. ex) 값이 주어진다. ? ? ? ? 이 값이 아래로 초기화 - (1) 0 0 0 0 그리고 원래 상태로 - (2) 기 본 상 태 문제 풀이 기본 - tc 값 1. 값을 주어줄 필요없이 메모리의 길이가 들어갈 배열을 만들어준다. 2. 0000에서 > 입력값으로 변겅하기 3. 1을 ..

알고리즘/SWAE 2021.02.05

[JAVA] 알고리즘 Array (1)

최상위 byte 단위 char 단위 입력스트림 InputStream Reader 출력스트림 OutputStream Writer 두가지로 나뉘는 이유 : 바이트(byte)단위인지 캐릭터(char)단위인지 따라서 나뉨. 입출력 (데이터의 흐름의 통로의 역활) System.in - 데이터 읽기 System.out - 데이터 내보내기 System.err - 데이터 에러 ( 문제가 정상적으로 풀린다면 쓸일이 없도록..) 입출력의 대상 변경 System.setOut() System.setErr() - System.setIn() 데이터 읽기( 입출력 받기 ) Scanner(File source) Scanner(InputStream source) Scanner(String source) > 데이터 형변환이 편리하다, ..

SSAFY 2021.02.04

[SW Expert] (D4) Ladder (1)

사다리타기입니다. 이런게임인데 중간에 선이 그어지겠죠? 다만 코딩을 하기위해선 약간의 수정이 필요합니다. 내가 갈수 있는 선은 1로 표현이됩니다. 당첨은 2로 표시됩니다. ex) 1 0 0 1 0 0 0 1 1 0 0 1 0 0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 1 1 1 0 0 1 0 0 0 1 1 0 0 2 0 0 0 1 이런식의 그림이 완성 됩니다. 풀이( 시작점 > 도착점 [첫행의 모든 시작 가능한 열을 조사해야함.]) 풀이 ( 도착점 > 시작점 [돌아오는 경로만 찾으면되기때문에 단축됨.]) 사다리는 이해가가는데 달팽이는 아직어렵다. 이유는 배열과 친해지지 못한듯,, 다만 이해간다는 것에 ..

카테고리 없음 2021.02.03
728x90