- Today
- Total
- dp
- array
- μμμ λ ¬
- μλ£κ΅¬μ‘°
- λ°μ΄ν°λ² μ΄μ€
- leetcode
- λ¬Έλ²
- MST
- pytorch
- μλ°
- νλ‘κ·Έλλ¨Έμ€
- java
- μΈν΄
- BFS
- 벨λ§ν¬λ
- λ€μ΅μ€νΈλΌ
- μ‘Έμ μν
- CS
- database
- λ°±μλ
- 그리λ
- spring
- μλ°μμ μ
- ꡬν
- PS
- Algorithm
- OOP
- λ°±μ€
- tree
- Graph
Partially Committed
[Summer/Winter Coding(~2018)] μμ λ§λ€κΈ° λ³Έλ¬Έ
[Summer/Winter Coding(~2018)] μμ λ§λ€κΈ°
WonderJay 2022. 7. 1. 23:31https://programmers.co.kr/learn/courses/30/lessons/12977
[c++]
nums λ°°μ΄μ μμ 3κ°λ‘ λ§λ€ μ μλ ν©μ΄ μμμΈ κ²½μ°λ₯Ό μΉ΄μ΄νΈνλ κ²μ΄λ€. μ΄λ μ£Όμν μ μ ν©μ λν μ€λ³΅ μ²λ¦¬λ νμ§ μμλ λλ€. μλλ©΄ μμ P κ° λ§μ½μ κ°κ° λ€λ₯Έ μμμ ν©μΌλ‘ ꡬμ±λλ€λ©΄, μ«μλ κ°μ§λ§ λ€λ₯Έ κ²½μ°μ΄λ€. λλΆμ΄ κ°κ°μ μμλ μ€λ³΅λμ§ μλλ€λ μ μ κ° μμΌλ―λ‘ ν©μ λν μ€λ³΅μ²λ¦¬λ μ κ²½μ°μ§ μμλ λλ€.
nums λ°°μ΄μ μμλ₯Ό μννλ©° 3κ°μ§λ₯Ό μ ννμ¬ λ§λ€ μ μλ ν©μ ꡬνλ λ°©λ²μΌλ‘ λ°±νΈλνΉμ μ¬μ©νμλ€. depth(k), start μΈλ±μ€, nums λ°°μ΄μ μΈμλ‘ λ°λ dfs ν¨μμμ k κ° 3 μ΄λΌλ©΄ 3 κ°μ§μ μμλ₯Ό λͺ¨λ νν κ²μ΄λ―λ‘ sum μ ꡬνκ³ , isprime ν¨μμ sum μ λ£μ΄ μμμΈμ§ νλ³νλ€.
k κ° 3μ΄ μλλΌλ©΄ μμ§ 3 κ°μ§μ μμλ₯Ό λͺ¨λ νν κ²μ΄ μλλ―λ‘ start index λΆν° num.size() κΉμ§ for λ¬Έμ λλ©° arr λ°°μ΄μ 차곑차곑 nums[i] λ₯Ό μ μ₯νλ€. κ·Έλ¦¬κ³ dfs(k+1, i+1, nums) λ₯Ό μ¬κ·νΈμΆνλ©΄ arr λ°°μ΄μλ κ²°κ΅ μ νλ 3κ°μ§ μμκ° arr[0], arr[1], arr[2] μ μ μ₯λλ€. μ΄λ₯Ό λν κ°μ΄ sum μ΄λ€.
sum μ μμ νλ³μ μμ μ μ μΈν λλμ΄ λ¨μ΄μ§λ μκ° μλμ§ νμΈνλλ°, λμΉμ±μ μν΄ μμ νλ³μλ μ§μ₯μ΄ μμΌλ―λ‘ λ²μλ₯Ό sqrt(sum) κΉμ§λ§ μννμ¬ μ°μ°λμ μ€μλ€.
#include <vector>
#include <math.h>
#include <iostream>
using namespace std;
bool isused[100];
int sum = 0; int ans = 0;
vector<int> arr(3, 0);
bool isprime(int n)
{
for (int i = 2; i <= sqrt(n); i++)
{
if (n % i == 0)
return false;
}
return true;
}
void dfs(int k, int start, vector<int>& nums)
{
if (k == 3)
{
sum = arr[0] + arr[1] + arr[2];
if (isprime(sum))
{
ans++;
sum = 0;
}
return;
}
else
{
for (int i = start; i < nums.size(); i++)
{
arr[k] = nums[i];
dfs(k + 1, i + 1, nums);
}
}
}
int solution(vector<int> nums) {
dfs(0, 0, nums);
return ans;
}
'π₯ Algorithm || λ¬Έμ νμ΄ > PS' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[νλ‘κ·Έλλ¨Έμ€] μμ£Όνμ§ λͺ»ν μ μ (0) | 2022.07.02 |
---|---|
[μ λ ¬] kλ²μ§Έμ (0) | 2022.07.01 |
[μκ° μ½λ μ±λ¦°μ§ μμ¦1] λ΄μ (0) | 2022.07.01 |
[μκ° μ½λ μ±λ¦°μ§ μμ¦2] μμ λνκΈ° (0) | 2022.07.01 |
[μκ° μ½λ μ±λ¦°μ§ μμ¦3] μλ μ«μ λνκΈ° (0) | 2022.07.01 |