일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 리눅스
- zookeeper
- codewars
- 스칼라
- OOM
- HBase
- go
- golang
- docker
- Go언어
- gradle
- leetcode
- 동적프로그래밍
- redis
- 문제풀이
- 알고리즘
- Linux
- scala
- programmers
- Python
- 파이썬
- dynamic programming
- 프로그래머스
- 코드워
- DP
- 주키퍼
- boj
- 튜토리얼
- 자바
- Java
- Today
- Total
목록2016/04/10 (3)
파이문
Consecutive strings 이 전까지의 문제가 그냥 믹스 커피였다면 이 문제는 카누 정도 되더군요. 일단 함수의 첫 번쨰 입력으로 연속된 문자열이 담겨 있는 리스트가 오게 됩니다. (다른 언어에선 배열) 그리고 두 번째 입력으로 int형(K) 숫자가 오게 되는데요. 이 두 값을 받아서 연속된 K개의 문자열이 가장 길어지는 경우를 return 해야 합니다. 말로는 어려운데 예를 들면 다음과 같습니다. ["a", "bc" , "def"] , 2 가 들어오게 되면 "bc" , "def" 두 개의 값의 총 길이는 5입니다. 이는 ["a", "bc" , "def"] 에서 2개를 골라 만들 수 있는 가장 긴 문자열 입니다. 단, 앞서 말했듯이 연속되어야 합니다. 그래서 예제로 테스트 해볼 수 있는 다음과 ..
Valid Phone Number 입력 받은 문자열이 핸드폰 번호라고 판단할 수 있는지에 관한 문제였습니다. "지역번호 앞 번호-뒷 번호" 순이면 옳다고 판단할 수 있습니다. (단, 문제에도 적혀 있듯이 지역번호 다음에 오는 닫힌 괄호 뒤에 띄어쓰기가 꼭 있어야 합니다.) 어렵지 않게 그냥 쉽게 생각해서 풀기로 하였습니다. 띄어쓰기를 구분으로 지역번호와 전화번호로 나누어지고 이 때 길이가 2여야 하며 전화번호는 다시 하이픈을 기준으로 길이가 2가 된다면 옳은 전화번호로, 판단하기로 하였습니다. 하지만 에러가 나더군요. 생각해보니 하이픈이 숫자 맨 앞에 오는 경우도 단순히 길이를 2로 판단해서 True를 리턴한다는 것을 알았습니다. 띄어쓰기도 마찬가지였습니다. (예제 입력 값에 알파벳은 들어가지 않는다고 ..
파이썬에서 문자열 합치기 파이썬에서 기존에 문자열을 다음과 같이 더하여서 종종 사용하였다. new_str = str + word 그러나 이 방법은 파이썬에서 지양하는 문자열 append 방법이었다. 파이썬에서 문자열은 불변 객체로, 새로운 값을 더하여 문자열을 생성할 경우 기존의 것에서 더해지는 것이 아닌, 새로운 객체가 생성되는 것이었다. (자바의 String과 같다. 얕은 지식으로는 자바의 경우 String대신에 StringBuilder를 사용하라고 했던 것 같다. 자바1.6 이상? 부터는 컴파일러가 좋아져서 그냥 문자열을 더할 때는 + 를 쓴다고 한다. 내부적으로는 빌더를 쓰기 때문에 가독성을 위해서 String을 그냥 사용해도 좋다고. 단, 빌더와 버퍼의 구분은 해야 한다!) 그래서 파이썬에서 굳..