본문 바로가기
728x90

알고리즘123

[ BOJ/C# ] 14503 로봇 청소기 BFS 문제 https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net BFS에서 자주 사용되는 Queue를 사용할까 했지만 이차원배열로 푸는 방법이 머리속으로 딱 그려져 풀어보았다. BFS는 글로 먼저 적으며 나 자신도 이해하고 푸는 것이 중요하다고 생각한다. using System; using System.IO; namespace _14503 { class Program { static void Mai.. 2023. 8. 20.
[BOJ/C#] 1264 모음의 개수 https://www.acmicpc.net/problem/1264 1264번: 모음의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 영어 대소문자, ',', '.', '!', '?', 공백으로 이루어진 문장이 주어진다. 각 줄은 최대 255글자로 이루어져 있다. 입력의 끝에는 한 줄 www.acmicpc.net string의 ToLower을 사용하여 대문자를 소문자로 바꿔준다. using System; using System.IO; using System.Text; namespace _1264 { class Program { static void Main(string[] args) { StreamReader sr = new StreamReader(Console.OpenStandard.. 2023. 8. 17.
[BOJ/C#] 1152 단어의 개수 여러 배울 것들이 넘치는데 C++을 처음부터 배워나가며 알고리즘을 공부하려 하니 부담이 많이 되었다. 그래서 다시 C#으로 알고리즘을 일단 공부하고, 벽을 만나거나 내가 어느정도 C#을 다룰 줄 안다고 생각되었을 때 C++을 배울 듯하다. https://www.acmicpc.net/problem/1152 1152번: 단어의 개수 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열 www.acmicpc.net 입력된 문자열을 공백을 기준으로 나눠 string 배열로 저장하여 단어 수를 출력하는 문제이다. Split으로 string 배열로 저장하고, 공백이 맨 앞.. 2023. 8. 16.
[ BOJ/C++] 10171 고양이, 10172 개 https://www.acmicpc.net/problem/10171 10171번: 고양이 아래 예제와 같이 고양이를 출력하시오. www.acmicpc.net \ /\ ) ( ') ( / ) \(__)| 위와 같은 출력을 요구하는 문제이다. 하지만, 그대로 출력하려 하면 오류가 난다. 바로 \ 때문이다. https://learn.microsoft.com/ko-kr/cpp/c-language/escape-sequences?view=msvc-170 이스케이프 시퀀스 자세한 정보: 이스케이프 시퀀스 learn.microsoft.com 이러한 이스케이프 시퀀스 때문에 \ 뒤에 문자가 오지 않으면 에러로 인식한다. 이러한 경우에 \를 출력하려면 두 번 입력하면 된다. \\ 다음으로 중요한 포인트는 줄바꿈이다. 위와.. 2023. 7. 25.
[BOJ/C++] 2557 Hello World, 10699 오늘 날짜 1. 2577 Hello World 가장 기본적인 문제이다. '성공'표시를 남기기 위해 제출하였다. 이 문제로 C++을 처음 접한다면 표준 라이브러리의 입출력 클래스 iostream 헤더파일 선언. std 네임스페이스의 출력함수 cout참조, 문자열 Hello World!출력 (문제 이름과는 달리 !가 있다. ) #include int main() { std::cout 자세한 정보: learn.microsoft.com 처음에 기본적인 년, 월, 일 출력이 어떻게 되는지 알아보기 위해 출력해보았다. +포인터라는 개념을 알아야한다. C언어를 배우며 가장 핵심이 되었던 내용이라고 생각한다. 당시에 교수님께서 다른 언어를 배우면 포인터라는 개념이 따로 존재하지 않는다고 하셨는데, C++에는 존재하였다. 내일은 .. 2023. 7. 14.
[BOJ C++] 11382 꼬마정민, 자료형 처음에 뭐야 쉽네ㅋㅋ 하고 호기롭게 제출했지만 틀렸다. 바로 이 부분 때문. int의 범위는 –2,147,483,648 ~ 2,147,483,647 이기 때문에, int를 변수로 사용했다가는 모든 조건을 만족시키지 못한다. int가 아닌 long으로 바꿔주었다. #include int main(int argc, char const* argv[]) { long a; long b; long c; std::cin >> a >> b >> c; std::cout 2023. 7. 13.
728x90