CS/Algorithm 문제
[BaekJoon] 백준 2014번 소수의 곱
[BaekJoon] 백준 2014번 소수의 곱 문제: https://www.acmicpc.net/problem/2014 내코드 - 조금 어려운 우선순위 큐 문제 - 알고리즘은 아래와 같다. 1. 주어진 소수를 배열에 저장 2. 주어진 소수를 priorityqueue에 넣는다. 3. priorityqueue에서 가장 작은 원소인 head를 꺼낸다. 4. 꺼낸 head와 주어진 소수들을 각각 곱한다. 5. 곱한 소수의 곱을 priorityqueue에 넣는다. 6. 단, 주어진 소수가 head의 약수인 경우 다음 iteration으로 바로 넘어간다.(중복 방지) 7. 3-6번 과정을 n-1번 반복한다. 8. priorityqueue에서 head를 꺼내고 출력한다.(n번째 꺼낸 head가 정답) #include..
[BaekJoon] 백준 13414번 수강신청
[BaekJoon] 백준 13414번 수강신청 문제: https://www.acmicpc.net/problem/13414 내코드 - 처음에 list를 사용해서 풀었더니 시간초과가 났다. - vector로 학번들을 저장해두고, set으로 중복여부를 판단한다. #include #include #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(0); int maxP, click; cin >> maxP >> click; vector li; vector result; set s; for (int i=0;i > tmp; li.push_back..
[BaekJoon] 백준 1978번 소수 찾기
[BaekJoon] 백준 1978번 소수 찾기 문제: https://www.acmicpc.net/problem/1978 내코드 - 소수는 1과 자기자신으로만 나눠지는 수라는 것을 이용하면 되는 문제 - 여기서 1은 소수가 아니라는 것을 주의하자. #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(0); int n; cin >> n; int num = 0; for (int i = 0; i > input; bool isPrime = true; if (input == 1) continue; for (int j = 2; j < input; j++)..
[BaekJoon] 백준 2869번 달팽이는 올라가고 싶다
[BaekJoon] 백준 2869번 달팽이는 올라가고 싶다 문제: https://www.acmicpc.net/problem/2869 내코드 - (v-b)/(a-b) 이 값이 나눠떨어지면 해당 값, 나눠 떨어지지 않으면 +1을 해준값이 정답이다. - 여기선 int형이라 계산을 고려해서 (v-b-1)/(a-b) + 1로 처리한다. #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(0); int a, b, v; cin >> a >> b >> v; int days = (v - b - 1) / (a - b) + 1; cout
[BaekJoon] 백준 10809번 알파벳 찾기
[BaekJoon] 백준 10809번 알파벳 찾기 문제: https://www.acmicpc.net/problem/10809 내코드 - ascii코드로 'a'는 97이다. - fill_n함수는 배열을 같은 수로 초기화 시켜주는 함수. #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(0); string input; cin >> input; int len = input.length(); int alpabet[26]; fill_n(alpabet, 26, -1); for (int i = 0; i < len; i++) { int point = input.at(i) - 97; if (alpabet[..
[BaekJoon] 백준 2443번 별 찍기 - 6
[BaekJoon] 백준 2443번 별 찍기 - 6 문제: https://www.acmicpc.net/problem/2443 내코드 #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(0); int n = 0; cin >> n; for (int j = 1; j
[BaekJoon] 백준 2442번 별찍기 - 5
[BaekJoon] 백준 2442번 별찍기 - 5 문제: https://www.acmicpc.net/problem/2442 내코드 #include #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(0); int n = 0; cin >> n; for (int j = 1; j
[BaekJoon] 백준 10093번 숫자
[BaekJoon] 백준 10093번 숫자 문제: https://www.acmicpc.net/problem/10093 내코드 - 두가지 주의할 점이 있었다. - 첫번째는 A와 B의 값의 최대가 10의 15제곱이라는 것. 그래서 int형이 아닌 long long 형을 사용해야 했다. - 두번째는 A == B인 경우를 생각해줘야한다는 것이다. #include #include using namespace std; void result(long long a, long long b) { cout b; if (a b) result(b, a); else cout