![[Java] 백준 15단계 - 1735번 문제 (분수 합)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FS9vj8%2FbtsoZ1m8yHC%2FAAAAAAAAAAAAAAAAAAAAAKbpp_ynLCn9O6jk-oRmrxwtO2TOc0SnUHFYP7S74-WO%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3D1fY1b%252F5AQFOjKH4QwYV6EMd4xo4%253D)
문제설명 소스코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int arr[] = new int[4]; for(int i = 0; i < 4; ++i) arr[i] = in.nextInt(); int a = (arr[0] * arr[3]) + (arr[1]* arr[2]); int b = arr[1] * arr[3]; int minDivisor = gcd(a, b); System.out.println(a / minDivisor + " " + b / minDivisor); } public static int gcd(int a, i..
![[Java] 백준 15단계 - 13241번 문제 (최소공배수)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FbcXGqw%2Fbtso0t4S1eS%2FAAAAAAAAAAAAAAAAAAAAAKfvuxHcjgFY2yZxCMik-5m67D5umT9f_byOR6oLyuPO%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DVczN%252FbUxnYewhaeiyD83caRixWU%253D)
문제설명 소스코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); long a = in.nextLong(); long b = in.nextLong(); System.out.println(a * b / gcd(a, b)); } public static long gcd(Long a, Long b) { if(b == 0) return a; else return gcd(b, a % b); } } 설명 최소공배수와 최대공약수와의 관계는 아래와 같다. 두 자연수의 곱 = 최대공약수 × 최소공배수 최소공배수 = 두 자연수의 곱 / 최대공약수 유클..
![[Java] 백준 15단계 - 1934번 문제 (최소공배수)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FkAqHo%2FbtsoZLdp4Vw%2FAAAAAAAAAAAAAAAAAAAAAGagq_qtk8bbtB4YgNe22NqBjbIaWcz0Qc8x5eek_7Bp%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DpKsbrGPURNkooo8EI7T%252F%252BhQpbzs%253D)
문제설명 소스코드 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int T = in.nextInt(); for(int i = 0; i < T; i++) { int a = in.nextInt(); int b = in.nextInt(); System.out.println(a * b / gcd(a, b)); } } public static int gcd(int a, int b) { if(b == 0) return a; else return gcd(b, a % b); } } 설명 최소공배수와 최대공약수와의 관계는 아래와 같다. 두 자연수의..
![[C++] 백준 14단계 - 11478번 문제 (서로 다른 부분 문자열의 개수)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FcEOdWT%2FbtsoCFdMhZ7%2FAAAAAAAAAAAAAAAAAAAAAHbRgYkPyWBeAUNB6xp8SYaINVHXv8umbmJW4F7Q6Hwx%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3Dm4vKkGRIJg9o5nB%252FqvCLTAlwsXw%253D)
문제설명 소스코드 #include #include #include using namespace std; int main() { string input; int count = 0; cin >> input; for (int i = 0; i < input.length(); ++i) { vector vec; for (int j = 0; j < input.length() - i; ++j) { string strTmp = input.substr(j, i + 1); //문자열 잘라내기 vec.push_back(strTmp); //벡터에 원소 추가 } sort(vec.begin(), vec.end()); //벡터 정렬 vec.erase(unique(vec.begin(), vec.end()), vec.end()); //..
![[C++] 백준 14단계 - 1269번 문제 (대칭 차집합)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FtjFp9%2FbtsoGfMwIva%2FAAAAAAAAAAAAAAAAAAAAANq1mXOnsoihvYnAx7E0t4JbtVFEbKkY0t035N39bMLm%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DKIf4z0rNQZ0QUZkPRIjWh8N7kjc%253D)
문제설명 소스코드 map을 이용 #include #include using namespace std; int main(void) { map m; int aSize, bSize; cin >> aSize >> bSize; for (int i = 0; i > input; m.insert(pair(input, true)); //입력받은 값과 true를 맵에 저장 } int count = 0; //교집합 개수를 저장 for (int i = 0; i > input; if (m[input] == true) count++; //맵에 해당하는 값이 있으면 count를 1증가 } cout > aSize >> ..
![[C++] 백준 14단계 1764번 문제 (듣보잡)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FQZCT7%2FbtsoyIvx1Uz%2FAAAAAAAAAAAAAAAAAAAAABzrC0p8NgPbG1RKJGZvtpVPVCARHHvP16AnAyS4CLzM%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3D7JftojYstbWJk%252F7NsOVL8uV68N0%253D)
문제설명 소스코드 #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); //표준 스트림 동기화 해제 cin.tie(0); //입출력 연결 끊기 vectorv1, v2; int N, M; cin >> N >> M; for (int i = 0; i > input; v1.push_back(input); } sort(v1.begin(), v1.end()); //v1 정렬 for (int i = 0; i > input; if (binary_search(v1.begin(), v1.end(),..
![[C++] 백준 14단계 - 10816번 문제 (숫자 카드 2)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FmDOsn%2FbtsoyXZtoaX%2FAAAAAAAAAAAAAAAAAAAAAMEACLwFvT1GcpkhBsqBUe37RLIJKsoYbXBOG1xDZjup%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DTZSmoZVqp4OMCHkk95vFkDvpqgQ%253D)
문제설명 소스코드 #include #include using namespace std; int main(void) { ios_base::sync_with_stdio(false); //표준 스트림 동기화 해제 cin.tie(nullptr); //입출력 연결 끊기 map m; int N, M; cin >> N; for (int i = 0; i > input; ++m[input]; } cin >> M; for (int i = 0; i > input; cout
![[C++] 백준 14단계 - 14425번 문제 (문자열 집합)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FbuxqsZ%2FbtsoxIhdlmH%2FAAAAAAAAAAAAAAAAAAAAAFkpedPJNgt_YKFT3JNHGTxdIibSYUyx-7IL9cIBizEz%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3Dz8v4%252FJ5bH%252F87w9yPf7njZaTUxOc%253D)
문제설명 소스코드 #include #include using namespace std; int main(void) { map m; int N, M; int count = 0; cin >> N >> M; for (int i = 0; i > str; m.insert(pair(str, true)); } for (int i = 0; i > str; if (m[str] == true) count++; } cout