전체 글

코딩 공부/TIL

NHN 코딩테스트 후기

1. IDE 없이 코딩하기 너무 어렵다. //출력문 찍어도 볼 수 가 없어서, 꼼수로 return에 보고싶은 값 넣어서 테스트함 2. 촬영용으로 웹 캠과 핸드폰을 사용하여 준비에 약 20분 소요 //웹캠 사야겠다. 3. 2시간 코테라 노트북 방전. //웹 캠에 화면공유까지 키니까 베터리가 빨리다니 주의할 것 4. 문제는 쉬웠는데 못 품 //화이팅!

코딩 공부/백준(C++)

[백준 10942][C++] 팰린드롬?

문제 링크 https://www.acmicpc.net/problem/15686 ◆문제 해결 및 설명◆ 문제 : 수열을 주고, 어디 부터 어디까지가 펠린드롬 이냐 묻는 질문에 대답하는 문제 펠린드롬이란 거꾸로 읽어도 똑같은 문장이나 단어를 뜻한다. 따라서 직접 뒤집어서 비교하거나, 포인터를 통해서 문자가 같은지 판별해주면 되는데 이 문제는 수열의 크기 최대 2,000, 질문의 개수 최대 1,000,000 이며 시간 제한이 0.5초 이다. 위에서 이야기한 두 방법으로는 풀 수 가 없다. 다이나믹 프로그래밍으로 풀 수 있는데 기준을 잡고 기준이 펠린드롬일 때, 좌우로 하나씩 증가 했을 때 좌우가 같은 문자열이라면 그 문자는 펠린드롬이다. abcba에서 c가 기준인것이 보일 것이다. 좌우로 하나 늘린 bcb도 ..

코딩 공부/백준(C++)

[백준 1911][C++] 흙길 보수하기

문제 링크 https://www.acmicpc.net/problem/1911 ◆문제 해결 및 설명◆ 문제 : 물 웅덩이와 널빤지의 갯수와 첫 줄에 제공하고, 물 웅덩이의 길이를 제공할 때, 최소 널빤지 사용 갯수를 대답하라. 힌트를 보고 처음에는 아무생각 없이 구현으로 풀었다. 그랬더니 바로 메모리 초과가 딴! (문제 풀기전에 메모리와 시간을 확인 해야겠죠?) 그럼 이걸 수학적으로 풀어야 한다고 생각이 들었고, 그럼 물 웅덩이의 시작 부분을 찾아서 널빤지를 깔고 널빤지가 끝나는 위치를 저장한 다음, 저장한 위치에다가 널판지를 계속 설치를 하고, 이후 다음 물 웅덩이의 시작 부분이 저장된 널빤지가 끝나는 위치보다 작다면 널빤지가 끝나는 위치부터 널판지를 설치하는 코드를 작성하였다. ◆코드 전문◆ #incl..

코딩 공부/백준(C++)

[백준 2607][C++] 비슷한 단어

문제 링크 https://www.acmicpc.net/problem/2607 ◆문제 해결 및 설명◆ 문제 : 같은 문자로 같은 개수로 이루어져 있다면 "같은 구성을 갖는다" 라고 하고 이 상태거나, 이 상태에서 하나 더 문자가 있거나, 하나만 다르거나, 하나가 적을 때의 개수를 첫번째 문자열과 비교하여 몇개의 문자열이 그러한지 답하라. 처음에는 이중 반복문을 통해서 문자열의 문자 하나하나를 비교해서 같다면 sameCount 변수에 +1을 해주었다. 이후 아래의 상황에 맞게 answer++를 해주었다. 첫번째 문자열의 size()와 sameCount가 같고, 비교 문자열의 size() 와 sameCount가 같다면 (같은 구성) 첫번째 문자열의 size() 와 sameCount가 같고, 비교 문자열의 si..

메카인
메카인의 지식창고