[BOJ/백준/C++] 2108번 통계학
·
Coding Test/Baekjoon
2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net 📌 접근 방법 산술평균의 반올림은 round 함수를 사용 최빈값 ( -4000 ~ 4000의 숫자들 중 가장 많이 등장한 숫자 출력, 여러 개일 경우 두 번째로 작은 값 출력) - 4000~4000범위의 숫자를 +4000하여 ➡ 0~8000 범위로 바꿈 배열의 크기가 8001인 배열을 만들어 숫자가 나온 만큼 해당 인덱스의 값을 1 증가시켜줌, 벡터에도 입력값 저장해준다. 배열에서 가장 값이 큰 값이 많이 나온 수이기 때문에 해당 인덱스를 max에 넣어줌 위에서 구한 max와..
[BOJ/백준/C++] 1010번 다리 놓기
·
Coding Test/Baekjoon
1010번: 다리 놓기 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 n-k){ k=n-k;..
[BOJ/백준/C++] 4134번 다음 소수
·
Coding Test/Baekjoon
4134번: 다음 소수 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다. www.acmicpc.net 📌 접근 방법 🚫 시간초과 반복문을 사용하여 n까지 돌려보며 n 이상의 소수를 찾아보았더니 시간초과가 나왔다 long long 사용 반복문에서 i*i를 사용하면 i까지만 반복하면서 모든 경우를 한 번에 확인할 수 있습니다. i*i가 n보다 작거나 같을 때까지만 반복하고 있다 반복 횟수를 줄일 수 있고, 성능을 향상시킬 수 있. ✅ Pass Code #include #include #include #include #include #include #include #include using namespace std; typedef unsigned l..
[BOJ/백준/C++] 2485번 가로수
·
Coding Test/Baekjoon
2485번: 가로수 첫째 줄에는 이미 심어져 있는 가로수의 수를 나타내는 하나의 정수 N이 주어진다(3 ≤ N ≤ 100,000). 둘째 줄부터 N개의 줄에는 각 줄마다 심어져 있는 가로수의 위치가 양의 정수로 주어지며, 가 www.acmicpc.net 📌 접근 방법 유클리드 호제법을 사용하여 최대공약수를 구함 ✔ 일반 함수 int GCD(int a, int b){ int c = a%b; while(c!=0){ a=b; b=c; c=a%b; } return b; } ✔ 재귀 함수 int Euclidean(int a, int b){ int r=a%b; if(r==0)return b; return Euclidean(b, r); } ✅ Pass Code #include #include #include #inc..