본문 바로가기

Algorithm/Programmers

(4)
[Programmers] C++ LV2_피보나치수 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가해주세여! 해당 문제는 배열로 풀면 쉽게 풀리는 문제이며, 100000이라는 숫자가 제한이었습니다. 그래서 이러한 점을 봤을 때 문제에서 나온 1234567을 매번 나눠주고 나머지를 넣어주면 쉽게 풀리는 문제입니다. #include #include #include #define SIZE 100000 using namespace std; long long arr[SIZE]; void init() { for (int a = 0; a < SIZE; a++) { arr[a] = 0; ..
[Programmers] C++ LV2_땅따먹기 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가해주세여! 해당 문제는 처음에는 dfs 풀려고 하다보니까 시간초과가 나더라구요...!!!!! 그래서 생각해보니까 DP로 풀 수 있다고 생각했습니다. 0번 행이 아닌 1번행부터 진행하면서 자기 자신과 전 행의 자기 열을 제외한 다른 열들을 더해서 비교했을 때 최댓값을 자기 자신의 값으로 만드는 방법입니다. #include #include using namespace std; int solution(vector temp) { int answer = -1; vector land = ..
[Programmers] C++ LV2_카카오프렌즈컬러링북 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가해주세여! 해당 문제는 나름 쉽게 풀 수 있었습니다. dfs 방식으로 풀었으며, 각각의 조건에 대해서 가지치기만 잘 해주신다면 문제없이 풀 수 있을 거라고 생각합니다. 프로그래머스를 통해서 IDE에서 연습하는 것이 아닌 직접 프로그래머스에서 문제를 풀다 보니까 디버그 하기가 어렵지만 하다보니까 적응이 되네여!!! 모두들 열심히 합시다. #include #include #define SIZE 100 using namespace std; int dx[] ={-1,0,1,0}; in..
[Programmers] C++ LV2_오픈채팅방 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가해주세여! 오픈채팅방은 처음에는 vector로만 사용하다보니까 제출을 했을 때 마지막 쯤의 케이스에서 시간초과가 났습니다. 물론 해당 문제가 시간이 넉넉한 문제입니다. 그래서 다른 방식으로 생각을 해보려고 했습니다. 그래서 생각을 해보니, 기본적으로 사용자 id값이 존재하며, 사용자 id값에 대해서 value값인 username만 변경된다는 것을 알 수 있었습니다. 그래서 map을 사용해서 해당 문제를 풀었습니다. #include #include #include #include..