본문 바로가기

백준 문제 풀이 & C++ 공부54

백준 10773번 C++ https://www.acmicpc.net/problem/10773 10773번: 제로 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경 www.acmicpc.net 최근에 C++의 stack에 관하여 공부를 해서 다른 백준 문제를 풀었는데 (현재 추가적인 공부가 필요해서 임시저장) 동일하게 문제에서 stack사용을 요구하는 것 같아서 stack으로 풀었습니다. 조건문과 stack의 사용 방법만 제대로 익힌 상태라면 쉽게 풀 수 있었을 것입니다. 이번에 문제를 풀면서 알아낸것은 pop은 그져 꺼내기만 한다는 것이었습니다. to.. 2021. 6. 22.
백준 7568번 C/C++ https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 문제가 너무 쉬워서 시간 초과로 틀리겠다고 생각하고 정답 제출을 했는데 맞아버렸습니다... 2차원 배열을 조금이라도 알고 계신다면 쉽게 풀 수 있는 문제입니다. 이 문제는 쉬우니까 한번 코드를 보시지 않고 직접 풀어보시는 것이 좋을 것 같습니다. 제 생각엔 실버보단 브론즈에 가까운 문제인것 같습니다. #define _CRT_SECURE_NO_WARNINGS #include #inclu.. 2021. 6. 21.
백준 4553번 C/C++ #define _CRT_SECURE_NO_WARNINGS #include #include #include void TriFind(double a, double b, double c) { if (a > b && a > c) { if (a == b + c) { printf("right \n"); } else { printf("wrong \n"); } } else if (b > c && b > a) { if (b == a + c) { printf("right \n"); } else { printf("wrong \n"); } } else if (c > a && c > b) { if (c == a + b) { printf("right \n"); } else { printf("wrong \n"); } } else .. 2021. 6. 14.
백준 2869번 C/C++ www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 이 문제는 생각보다 쉽다고 생각하고 문제에 접근을 하였습니다. while문 하나로 문제에 있는 모든 예시가 완벽하게 한번에 돌아가서 답이 맞겠구나 싶어서 바로 제출을 했는데 이럴수가.. 시간초과..??? 아니 while문 하나만 썼는데 시간초과? 반복문 자체를 쓰면 안되는 문제구나라고 생각하고 다시 생각을 했습니다. 그러면서 생각한 방식이 결국 마지막 날에는 a만큼 올라가게 될거고 그 전날에는 a-b만큼 올라가게 될 것이니까 (v-a) / (a-b)를 해보면 어떨까 싶.. 2021. 3. 1.