diff --git "a/k \354\247\204\354\210\230\354\227\220\354\204\234 \354\206\214\354\210\230\352\260\234\354\210\230\352\265\254\355\225\230\352\270\260.cpp" "b/k \354\247\204\354\210\230\354\227\220\354\204\234 \354\206\214\354\210\230\352\260\234\354\210\230\352\265\254\355\225\230\352\270\260.cpp" new file mode 100644 index 0000000..e0d446a --- /dev/null +++ "b/k \354\247\204\354\210\230\354\227\220\354\204\234 \354\206\214\354\210\230\352\260\234\354\210\230\352\265\254\355\225\230\352\270\260.cpp" @@ -0,0 +1,66 @@ +#include +#include +#include +#include +#include + +using namespace std; + +stack s; +vector arr; +queue q; + +vector trans(int n , int k){ + while( n > 0){ + s.push(n % k); + n /= k; + } + + while (!s.empty()){ + arr.push_back(s.top()); + s.pop(); + } + + return arr; +} + +bool isPrime(long long num){ + if(num == 1 || num == 0){ + return false; + } + if(num == 2) + return true; + if(num % 2 == 0) + return false; + + for (long long i =3 ; i * i <= num; i+=2){ + if(num % i == 0){ + return false; + } + } + return true; +} + +int solution(int n, int k) { + + int answer = 0; + + vector result = trans(n ,k); + + for(int i =0 ; i <= result.size(); i++){ + if(i == result.size() || result[i] == 0){ + long long num = 0; + while(!q.empty()){ + num = num * 10 + q.front(); + q.pop(); + } + if(isPrime(num)){ + answer++; + } + } + else{ + q.push(result[i]); + } + } + return answer; +} diff --git "a/n^2 \353\260\260\354\227\264 \354\236\220\353\245\264\352\270\260.cpp" "b/n^2 \353\260\260\354\227\264 \354\236\220\353\245\264\352\270\260.cpp" new file mode 100644 index 0000000..8731a8c --- /dev/null +++ "b/n^2 \353\260\260\354\227\264 \354\236\220\353\245\264\352\270\260.cpp" @@ -0,0 +1,15 @@ +#include + +using namespace std; + +vector solution(int n, long long left, long long right) { + vector answer; + + for(long long i = left; i <= right; ++i) { + long long x = i / n; + long long y = i % n; + if(x < y) answer.push_back(y + 1); + else answer.push_back(x + 1); + } + return answer; +}