algorithm 46

hackerrank/warm up/Repeated String

https://www.hackerrank.com/challenges/repeated-string/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=warmup java에서 문자열말고 문자는 "==" 으로 비교 가능하다. 문자 자체를 비교하기 때문인데, String.matches(), Character.compare() 메소드도 사용가능하다. import java.io.*; import java.math.*; import java.security.*; import java.text.*; import java.util.*; import java.util.concurrent.*; import java..

algorithm/java 2021.06.20

hackerranck/warm up/jumping on the clouds

https://www.hackerrank.com/challenges/jumping-on-the-clouds/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=warmup 최적화 문제인줄 걱정하지 말자. 잘 생각해보면 while문 하나로 끝낼 수 있다. import java.io.*; import java.math.*; import java.security.*; import java.text.*; import java.util.*; import java.util.concurrent.*; import java.util.function.*; import java.util.regex.*; import ..

algorithm/java 2021.06.13

java 개발이 처음일 때 볼 수 있는 에러

1. unreported exception java.io.IOException; must be caught or declared to be thrown 자바로 개발하다보면 어떤 예외처리는 반드시 개발자가 처리하도록 강요되는데 그 중 하나가 IOException 이다. 사용하는 method가 throw IOException하는 경우인데 Caller에서 처리해주지 않아 발생하는 에러다. void Callee () throws java.io.IOException{ 해결방안 1) Caller에서 try catch문으로 에러를 잡아주도록 한다. try { Callee(); } catch(IOException e) { e.printStackTrace(); } 해결방안 2) Caller에서 받은 에러를 다시 또 th..

algorithm/java 2021.06.02

hackerrank/warm up/Counting Valleys

https://www.hackerrank.com/challenges/counting-valleys/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=warmup 등산가가 협곡을 몇개 지나가는지 알아보는 문제이다. (baseline = 0) string type을 list로 바꾸고 iterate 시키고 싶었는데 이 부분에서 List 타입이 좀 헷갈렸다. 여기서, ArrayList와 그냥 Array의 차이점이 무엇인지 짚고 넘어가자면, - List = interface - ArrayList = class 이라는데 이를 비교해보자. ArrayList List 이는 결국 같은 결과를 도출한다. 그러나 ..

algorithm/java 2021.05.23

풀어볼 문제

문자열 압축 https://programmers.co.kr/learn/courses/30/lessons/60057 기타 레슨 https://www.acmicpc.net/problem/2343 가스관 https://www.acmicpc.net/problem/2931 programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 외판원문제

algorithm/common 2020.12.06

c++ 입출력 최적화 방법

NHN 신입공채 코테 언어에 Python이 없다. C, C++, Java만 가능하여 빠르게 C++를 훑기로 했다. c++ 에서 cin, cout 보다 scanf, printf 가 더 빠르다는 것을 알고 있었다. 그런데 cin, cout 최적화를 시켜주면 어떤 경우에서는 scanf, printf보다 더 빠를 수 있다. int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> n; } 단 이 경우, stdio와 동기화를 false 시켰으므로 scanf, printf를 같이 쓰면 에러가 발생한다.

algorithm/c++ 2020.10.18

카카오블라인드/2020/가사검색

프로그래머스 이용 : https://programmers.co.kr/learn/courses/30/lessons/60060 처음에 for문 2개로 풀었더니 효율성 1,2,3번을 통과하지 못한다. 하위 소스가 그 내용이다. def solution(words, queries): result = [] """ queries 총 문자 개수, 맞춰야하는 문자 개수 맞으면 ans += 1 """ for q in queries: ans = 0 total_len = len(q) key = q.replace("?","") key_idx = q.find(key) for word in words: if len(word) != total_len: continue if key == "": ans+=1 continue idx = ..

algorithm/python 2020.07.27

알고리즘 문제 풀이 사이트

1. hackerrank https://www.hackerrank.com/interview/interview-preparation-kit 문제가 영어이고, 짧은 영어강의도 있다. input 코드는 이미 생성되어있어 함수만 작성하면 된다. 포인트로 틀린 케이스를 확인할 수 있다. https://www.hackerrank.com/dashboard 새로운 언어를 배울때도 좋을 것 같다. 코딩테스트 : 카카오계열 2. 프로그래머스 https://programmers.co.kr/learn/challenges 문제가 깔끔하다. 틀린 케이스를 확인할 수 없어 질문하기를 많이 이용하는 편이다. 코딩테스트 : 라인 3. leetcode https://leetcode.com/problemset/all/ 여기꺼 100문제 ..

algorithm/common 2020.03.16