구현
-
프로그래머스 프렌즈4블록 C++프로그래머스(Programmers) 2022. 7. 14. 23:43
위 초기 배치를 문자로 표시하면 아래와 같다. TTTANT RRFACC RRRFCC TRRRAA TTMMMF TMMTTJ 각 문자는 라이언(R), 무지(M), 어피치(A), 프로도(F), 네오(N), 튜브(T), 제이지(J), 콘(C)을 의미한다 입력으로 블록의 첫 배치가 주어졌을 때, 지워지는 블록은 모두 몇 개인지 판단하는 프로그램을 제작하라. 입력 형식 입력으로 판의 높이 m, 폭 n과 판의 배치 정보 board가 들어온다. 2 ≦ n, m ≦ 30 board는 길이 n인 문자열 m개의 배열로 주어진다. 블록을 나타내는 문자는 대문자 A에서 Z가 사용된다. 출력 형식 입력으로 주어진 판 정보를 가지고 몇 개의 블록이 지워질지 출력하라. 입출력 예제 mnboardanswer 4 5 ["CCBDE", ..
-
백준 2747 피보나치수 C++백준 algorithm 2022. 4. 26. 20:29
입력 첫째 줄에 n이 주어진다. n은 45보다 작거나 같은 자연수이다. 출력 첫째 줄에 n번째 피보나치 수를 출력한다. 예제 입력 1 복사 10 예제 출력 1 복사 55 => 단순구현문제입니다. => 피보나치수를 저장할 수 있는 배열을 만들고 FOR문을 통해 피보나치수를 구합니다. => n의 한계치가 45이므로, 배열의 크기는 46이상이어야 합니다. #include #include #include #include #include #include #include #include #include using namespace std; long fibo[50]; int N; int main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin >..
-
프로그래머스 행렬 테두리 회전하기 C++프로그래머스(Programmers) 2022. 1. 21. 20:27
제한사항 rows는 2 이상 100 이하인 자연수입니다. columns는 2 이상 100 이하인 자연수입니다. 처음에 행렬에는 가로 방향으로 숫자가 1부터 하나씩 증가하면서 적혀있습니다. 즉, 아무 회전도 하지 않았을 때, i 행 j 열에 있는 숫자는 ((i-1) x columns + j)입니다. queries의 행의 개수(회전의 개수)는 1 이상 10,000 이하입니다. queries의 각 행은 4개의 정수 [x1, y1, x2, y2]입니다. x1 행 y1 열부터 x2 행 y2 열까지 영역의 테두리를 시계방향으로 회전한다는 뜻입니다. 1 ≤ x1 < x2 ≤ rows, 1 ≤ y1 < y2 ≤ columns입니다. 모든 회전은 순서대로 이루어집니다. 예를 들어, 두 번째 회전에 대한 답은 첫 번째 회..
-
백준 1094 - 막대기백준 algorithm 2020. 8. 9. 19:42
=> 간단한 구현 문제입니다. => 입력받은 X의 값이 bar의 값을 뺌에 따라 0이 될 때까지 빼주면 됩니다. => if문을 이용해서 간단히 해결할 수 있습니다. #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int N; cin >> N; int cnt=0; int bar=64; while(N > 0) { if( bar
-
백준 1924 - 2007년백준 algorithm 2020. 7. 10. 14:12
=> 구현 문제입니다. => 해당 문제의 경우 1년의 case만 생각하면 되기 때문에 brute Force(브루트 포스)로 문제를 풀어도 전혀 무방합니다. week [7] : 일주일을 저장하는 배열 index : 위의 배열을 따라다니며 요일을 확인하는 변수 X와 Y의 값을 입력받습니다. switch case문을 이용해 한 달이 31일인 경우, 30일인 경우 28일인 경우를 나눕니다. 제가 구하는 달의 일까지만 index를 지속적으로 추가해줍니다. index는 7을 벗어나지 않으므로, %7을 해주어 숫자가 커지는 것을 방지해줍니다. weel [index]의 값을 출력합니다. => 위와 같은 logic을 따라 입력받은 X월 Y일의 요일을 알아낼 수 있습니다. => 다른 사람의 경우 X 이전의 달들을 inde..
-
백준 5585 - 거스름돈백준 algorithm 2020. 7. 4. 10:47
=> 단순 구현 문제입니다. pay = 1000 - pay를 실행한다. 큰 단위의 수로 거스름돈을 최대한 많이 채운다. 1까지 채운 이후의 동전 개수를 구한다. => 단순한 문제이기 때문에 이 이상 설명은 하지 않겠습니다. #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int yen[6]={500,100,50,10,5,1}; int pay; cin >> pay; pay = 1000-pay; int cnt=0; for(int i=0; i 0) { pay %= yen[i]; cnt += tmp; } } cout