
예제에 대해서는 값이 잘 나오는데 timelimit으로 통과가 되지 않는다 .. ㅠ 풀이와 생각 자체는 맞는 것 같은데 시간복잡도 때문인 것 같아서 어떻게 고쳐야할지 고민이다 .. 테스트 케이스가 두개 밖에 없어서 무척 답답하다 ㅠㅠㅠ 우선 위 풀이는, 1) 우선순위가 높은 순서로 정렬하고 tmp배열에 넣는다. 2) priorities 리스트의 인덱스를 indexs 리스트로 표현한다. 3) priorities가 tmp이면, 즉, 우선순위가 높은 순대로 내림차순한 것과 동일하다면, 제대로 정렬되었음을 확인하고 while문을 빠져나온다. 4) 첫번째 원소보다 큰 원소가 priorities에 존재한다면, 아직 정렬이 되지 않았다고 판단하고, index 배열과 priorities배열에 각각 pop후 push 해..

조합 문제 였는데 정말 기초적인 문제였음에도 불구하고 이상한 방법으로 헤맸다 ^^ .. ㅋ.. 딕셔너리 생성해서 각 종류별로 갯수를 저장해주고, 입지 않는 것까지 포함하여 dict[item]+1개를 답에 곱해준다. 마지막으로 아무것도 입지 않은 경우의 수 1을 빼주면 끄읏- 쉬운 문제였는데 삽질을 엄청 했다 .. ㅠㅠ 다른 사람의 풀이는 1줄인 것도 많았지만 사실 봐도 나중에 내가 할 수 있을 것 같지 않아서.. (특히 람다와 각종 메소드들 .. ㅠㅠ) 다른 사람 풀이는 오늘은 패스 ^^ .. (나중에 심심할 때 다른 사람의 풀이를 덧붙여 봐야겠다 ..^^ ㅎ) 오늘의 풀이 끄읕

파이썬에서 문자열 비교 시, startswith(), endswith(), in, not in을 사용할 수 있다. 공부가 목적이므로 메소드 등은 구글링하여 참조하였다. 처음에 테스트에서 통과되지 않은 항목들이 있었는데 ["123","12","1"] 등의 예시를 고려하지 못했었다. 그래서 sort로 정렬을 해주었다. 해시문제였지만 해시로는 어떻게 풀어야할지 절대 생각이 나지 않아 .. 해시를 이용하지 못했다 :-( 하지만 해시보다 복잡도는 낮다고 함..ㅋ 나와 비슷하지만 조금 차이가 있는 다른 분의 코드를 살펴보자. 다른분들은 zip() 메소드를 사용했다. zip 메소드는 여러 개의 순회 가능한(iterable) 객체를 인자로 받고, 각 객체가 담고 있는 원소를 터플의 형태로 차례로 접근할 수 있는 반복자..

엄청 빨리 풀 수 있을 줄 알았는데 시간이 꽤 오래 걸렸다. 여분이 있지만 도난당한 학생에 대해 생각하지 않은 것.. 문제를 대충 읽어서 예시에 대해서만 생각했는데 역시 문제를 꼼꼼히 읽는 것이 가장 중요하다는 교훈을 다시 얻었다 ㅋㅋ (문제 잘못 읽어서 삽질하는 게 가장 허탈한 것 같음..) 하지만 문제를 제대로 읽고 난 후에도 시간이 꽤 걸렸다 ㅠ .. for문 때문에 lost 리스트에서 어떻게 원소를 제거할 것인지 고민하느라 .. 하지만 간단하게 copy로 해결했다. 또 하나, 리스트는 원소가 없더라도 []로 출력되고 null이라 표시되지 않으므로 len을 이용해 리스트가 비어있는지 체크해줘야 한다. * i for i in reserve if i not in lost 다른 분의 코드에서 배운 새로운..

첫번째 풀이는 이렇게 .. 더럽다 .. max 함수를 쓸 생각을 못하고 for문으로 max를 구하고 max의 인덱스를 먼저 리스트에 넣은 다음 .. max 값과 같은 값이 있는지 또 for문으로 확인해서 .. 리스트에 넣어줬다. for문을 3번이나 쓴 안좋은 코드.. C에 익숙해져 있다보니 인덱스와 값을 같이 활용하는 것이 익숙치 않다. 다른사람의 풀이를 보고 새로 짜본 코드는 다음과 같다. 한눈에 봐도 꽤 짧아진 것을 확인할 수 있다. enumerate 함수를 처음 알게 되었는데 enumerate는 인덱스와 값을 함께 정렬해주는 아주 좋은 함수다. max 함수를 사용하면 조금 더 짧게 코드를 짤 수 있음을 깨닫고 수정했다. 프로그래머스에서는 불필요하지만 사실 max 는 numpy를 import해야 쓸 ..

인턴 중에 짬내서 코테 연습을 하게 되었다. 코테 준비 사실 너무 하기 싫다 .. ㅠ 그래도 인턴 중간중간 짬을 내서 코테 공부와 포스팅을 해보려고 한다. 화이팅! 오늘은 코딩한지 너무 오래 되어서 쉬운 level1부터 차근차근 풀어보려 한다. 정렬하는 방법에는 sorted()함수와 .sort() 메소드가 있는데, .sort()메소드는 새로운 배열로 저장하지 않고, 해당 배열에서 정렬 후 저장한다. sorted()함수가 더 자주 쓰인다고 한다. 파이썬은 정렬이 쉬워서 너무 좋다. 다른 사람 풀이 보니 한줄로 해결하신 분도 많던데 나도 조금 더 노력해야겠다. 아직 map 등의 자료구조가 익숙치 않은데 자료구조 공부가 우선인 것 같다. i,j,k에 대해서, commands[0] 이런 식으로 index를 활용..

첫날이라 C++에 미숙하고 오랜만에 알고리즘 문제를 접해서 한참 애먹었다. 태그가 해시 문제였는데 해시로 푸는 것은 실패했다. 혼자 알고리즘 책 펼쳐 놓고 무한 삽질 .. 다른 사람들 코드를 보니 안 해도 됐던 것 같지만 split도 쉽지 않았다. 문자열 문제에 필수로 등장한다고 하니 외워둬야 할 것 같다. vector split(string s, string divide) { vectorv; char* context = NULL; //char* c = strtok_r((char*)s.c_str(), divide.c_str(),&context); char* c = strtok((char*)s.c_str(), divide.c_str()); while (c) { v.push_back(c); //c = str..
- Total
- Today
- Yesterday
- CSS
- web
- 덱
- python
- brute force
- jsp
- 스프링
- bootstrap
- append
- 정렬
- jQuery
- 단계별로풀어보기
- html
- baekjoon
- 장고
- 자바스크립트
- 자바
- 큐
- Django
- R
- 파이썬
- javascript
- 백준
- 고득점 키트
- Oracle
- Java
- 브루트 포스
- 문자열
- 프로그래머스
- Case When
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |