[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..
[BOJ/백준/C++] 1934번 최소공배수
·
Coding Test/Baekjoon
1934번: 최소공배수 두 자연수 A와 B에 대해서, A의 배수이면서 B의 배수인 자연수를 A와 B의 공배수라고 한다. 이런 공배수 중에서 가장 작은 수를 최소공배수라고 한다. 예를 들어, 6과 15의 공배수는 30, 60, 90등이 있 www.acmicpc.net 📌 접근 방법 ⚡ 최소 공배수 구하는 공식 int LCM(int a, int b){ return a*b/GCD(a,b); } a * b / 최대 공약수를 이용하면 구할 수 있음 ⚡ 최대 공약수 구하는 공식 int GCD(int a, int b){ int c = a%b; while(c!=0){ a=b; b=c; c=a%b; } return b; } 유클리드 호제법을 이용해서 구함 유클리드 호제법 : 두 정수 a, b에 대해, a를 b로 나눈 나..