본문 바로가기

분류 전체보기268

BFS 구현 (C++) #include using namespace std; #define X first #define Y second int board[502][502] = {{1,1,1,0,1,0,0,0,0,0}, {1,0,0,0,1,0,0,0,0,0}, {1,1,1,0,1,0,0,0,0,0}, {1,1,0,0,1,0,0,0,0,0}, {0,1,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0}}; bool vis[502][502]; int n=7, m=10; int dx[4]={0,1,0,-1}; int dy[4]={1,0,-1,0}; int main(void){ queue Q; vis[0][0] =1; Q.push({0,0}); while(!Q.empty()).. 2022. 6. 17.
[프로그래머스] JadenCase 문자열 만들기 (Javasciprt) 코딩테스트 연습 - JadenCase 문자열 만들기 | 프로그래머스 (programmers.co.kr) 코딩테스트 연습 - JadenCase 문자열 만들기 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고 programmers.co.kr 문자열 문제인데 고생을 많이했다. 테스트 케이스는 계속 통과하지만 정답은 아닌... Javascript function solution(s) { let arr = s.toLowerCase().split(" "); let answer = arr.map(v=>{ let tmp = v.split(""); if(tmp[0]!=n.. 2022. 6. 17.
[baekjoon] 그림 1926 (C++) 1926번: 그림 (acmicpc.net) 1926번: 그림 어떤 큰 도화지에 그림이 그려져 있을 때, 그 그림의 개수와, 그 그림 중 넓이가 가장 넓은 것의 넓이를 출력하여라. 단, 그림이라는 것은 1로 연결된 것을 한 그림이라고 정의하자. 가로나 세로 www.acmicpc.net 접근 방법 알고리즘 : BFS 1. 이차원 배열을 처음부터 돌며 1이 발견되고 방문하지 않은 곳이라면 BFS 실행 2. 그림의 개수를 더해주고 넓이를 비교하여 MAX값 저장 C++ #include using namespace std; #define X first #define Y second int board[502][502]; bool vis[502][502]; int n,m; int dx[4] = {1,0,-1,0}; i.. 2022. 6. 17.
[TIL] 2022.06.16 6월 16일 TIL 프로그래머스 문제풀이를 시작했다. 우선 고득점 kit 문제를 풀기 시작했다. 예전에 시도했다가 문제 접근도 못해서 포기했던 문제지만 이제는 level 2 쉬운 난이도 문제까지는 풀어내는 것을 확인했다. 남은 기간동안 level 2 모두 푸는 것이 목표 백준도 골드 문제에 도전하고 있는데 대부분 구현까지는 성공하고 시간 초과로 실패하는 경우가 많다. 시간 복잡도를 생각하며 문제를 풀어야 하는데 아직은 구현하기에 급해서 n의 개수를 제외한 시간 복잡도는 생각하지 못하고 있다. 알고리즘 강의는 덱, 스택의 활용 부분까지 진행했다. 남은 부분은 모든 문제를 풀지는 않고 알고리즘 강의와 기본 문제까지만 풀고 부스트캠프 이후에 이어서 풀어볼 생각이다. (bfs, dfs, dp 등) 내일부터는 문.. 2022. 6. 16.