구현14 [백준 2477/c++] 참외밭 인접한 길이를 곱했을때의 값을 벡터에 넣고 그 최대값을 구해서 그 최대값에서 벡터내 3번 뒤의 값을 빼면 직사각형에서 작은 직사각형을 뺀 우리가 구하고자 하는 육각형이 나온다. 그림으로 표현하면 아래와 같다. 처음에는 더 복잡한 로직을 생각해서 구현하려하니 어려웠지만 아래처럼 로직을 짜니 생각보다 풀만한 문제였다 https://www.acmicpc.net/problem/2477 2477번: 참외밭 첫 번째 줄에 1m2의 넓이에 자라는 참외의 개수를 나타내는 양의 정수 K (1 ≤ K ≤ 20)가 주어진다. 참외밭을 나타내는 육각형의 임의의 한 꼭짓점에서 출발하여 반시계방향으로 둘레를 돌면서 지 www.acmicpc.net #include using namespace std; int main(){ int .. 2022. 7. 1. [백준 1004/c++] 어린 왕자 - 구현 어린왕자가 행성을 몇개를 통과하는지 세는 문제다 피타고라스 정리의 의해 반지름 r^2= x^2+y^2 이므로 r^2보다 위치의 제곱을 더한 값이 작다면 그 원 안에 있으므로 카운트를 해주면 된다. 단, 시작점과 끝점이 모두 같은 원 안에 있을 수 있으므로, 둘 다 반지름보다 안에 있지 않다면 이라는 조건을 추가해주어 예외를 처리해야한다 https://www.acmicpc.net/problem/1004 1004번: 어린 왕자 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 첫째 줄에 출발점 (x1, y1)과 도착점 (x2, y2)이 주어진다. 두 번째 줄에는 행성계의 개수 n이 주 www.acmicpc.net #include using namespace s.. 2022. 6. 24. [백준 1541/c++] 잃어버린 괄호 문제를 이해하지 못하고 조건을 설정해서 괄호문자를 넣으려 했다가 실패했다 생각보다 조건이 까다로웠기 때문이다. 하지만 내가 직접 괄호를 넣어서 새 문자열을 만들라는 말이 아니라 결과만 최소가 되도록 괄호를 사용한 "것처럼" 만들면 되는 것이었다 그렇다면 어떤 결과가 최소가 되는 결과일까? 첫 -가 나온 후로 +는 괄호로 묶어서 모두 -로 뺄셈 처리가 되도록 하면 된다 하나씩 문자를 세며 기호가 나왔다면 ' -' 가 처음 나오기 전의 수였다면 결과에 양수로 그대로 더해주고 첫 ' - ' 이후에 나온 +나 - 등의 모든 기호는 앞의 수여도 이미 그 수 전에 -가 있으므로 결과에 -처리를 시킨다 마지막 요소로 쓸 숫자를 세기 위해서 숫자의 끝에도 기호로 세서 판단할 것이 있어야 하는데 string 의 끝에는 .. 2022. 6. 24. [백준 4673/c++] 셀프 넘버 문제 자체는 아주 간단하다 하지만!!! 왜인지 모르겠는데 주석부분의 i를 통해 구하려고 할 때 답이 달라지고 멈추고 난리라서 왜 그런지 이해하려고 하다가 결국 코드를 다른 방법으로 써서 통과한 문제이다 다른 분들의 풀이를 보면 함수로 빼서 하시던데 굳이 그럴 필요는 못느낀 문제였다 근데 왜 저게 안되는거야 아오... #include using namespace std; int main(){ bool t[10004]; for(int i=1; i 2022. 6. 23. 이전 1 2 3 4 다음