SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 문제 내용 2. 접근 방식 입력된 문자열의 각 문자를 [표-1]을 보고 다시 값(숫자)로 변환 값을 6자리의 2진수로 변환 ex) 110 → 000110 2진수를 모두 연결 후, 8비트씩 끊어 10진수로 변환 10진수(아스키 코드)를 문자열로 변환 각 단계는 문제를 보고 유추할 수 있었지만, 10진수(아스키 코드)를 문자열로 변환하는 것은 생각하기 어려웠다. 하지만, 어떤 문자를 2진수로 표현하려면, 먼저 문자를 아스키 코드로 변환한 후 2진수로 표현해야 하므로 마지막 단계를 필요하다. 3. 정답 코드 ascii_lowercase, ascii_uppercas..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 문제 내용 2. 접근 방식 점수 종류가 101개이고 입력된 점수 데이터가 1,000개이다. 따라서 최악의 경우라도, 점수 종류 for문 안에서 특정 점수를 count하는 연산을 적용하여도 약 100,000번의 연산만 수행하면 된다. 입력된 점수 데이터의 중복을 없애 점수의 종류로 for문을 돌린다. 각 점수의 빈도수를 파악한 후 딕셔너리에 넣는다. 이때 딕셔너리의 key는 빈도수, value는 점수이다. 만약 딕셔너리에 동일한 빈도수(key)가 존재한다면, 점수가 더 큰 값이 value로 저장되도록 한다. 이후 딕셔너리에서 가장 큰 key 값의 value를 ..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 문제 내용 2. 접근 방식 접근1: 최대 이익을 내기 위해선 오늘 산 물건의 가격보다 다음 날 가격이 더 높아야 한다. 따라서 10 7 6의 경우 날이 지날수록 가격이 떨어지기 때문에 애초에 구매하지 않아야 최대 수익 0을 낼 수 있다. 그렇다면 3 5 9의 경우는 어떨까? 3보다 5가 더 높기 때문에 바로 5에 팔아버리면 그 다음 날 9로 팔 수 있는 기회가 사라진다. 즉, 무작정 오늘에 비해 내일 가격이 더 비싸다고 팔면 최대 이익을 얻을 수 없다. 접근2: 매일 1개씩 사다가, 전체에서 가장 비싼 가격일 때 팔아야 한다. 1 1 3 1 2에서 가장 비싼..