Level 1
내적
1차
#include <string>
#include <vector>
using namespace std;
int solution(vector<int> a, vector<int> b) {
int answer = 0;
for (int i=0; i<a.size(); i++) answer += a[i] * b[i];
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.93MB)
테스트 2 〉 통과 (0.01ms, 3.92MB)
테스트 3 〉 통과 (0.01ms, 3.95MB)
테스트 4 〉 통과 (0.01ms, 3.93MB)
테스트 5 〉 통과 (0.01ms, 3.96MB)
테스트 6 〉 통과 (0.01ms, 3.94MB)
테스트 7 〉 통과 (0.01ms, 3.95MB)
테스트 8 〉 통과 (0.01ms, 3.89MB)
테스트 9 〉 통과 (0.01ms, 3.94MB)
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
폰켓몬
1차
#include <vector>
#include <list>
using namespace std;
int solution(vector<int> nums)
{
list <int> pokemon(nums.begin(), nums.end());
pokemon.sort();
pokemon.unique();
return (nums.size() / 2 > pokemon.size()) ? pokemon.size() : nums.size() / 2;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.95MB)
테스트 2 〉 통과 (0.01ms, 3.77MB)
테스트 3 〉 통과 (0.01ms, 3.95MB)
테스트 4 〉 통과 (0.01ms, 3.78MB)
테스트 5 〉 통과 (0.01ms, 3.93MB)
테스트 6 〉 통과 (0.01ms, 3.72MB)
테스트 7 〉 통과 (0.02ms, 3.95MB)
테스트 8 〉 통과 (0.02ms, 3.96MB)
테스트 9 〉 통과 (0.02ms, 3.91MB)
테스트 10 〉 통과 (0.02ms, 3.84MB)
테스트 11 〉 통과 (0.02ms, 3.93MB)
테스트 12 〉 통과 (0.13ms, 3.94MB)
테스트 13 〉 통과 (0.14ms, 3.93MB)
테스트 14 〉 통과 (0.15ms, 3.9MB)
테스트 15 〉 통과 (0.13ms, 3.97MB)
테스트 16 〉 통과 (1.61ms, 4.25MB)
테스트 17 〉 통과 (1.46ms, 4.24MB)
테스트 18 〉 통과 (1.45ms, 4.25MB)
테스트 19 〉 통과 (1.44ms, 4.26MB)
테스트 20 〉 통과 (1.35ms, 4.06MB)
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
음양 더하기
1차
#include <string>
#include <vector>
using namespace std;
int solution(vector<int> absolutes, vector<bool> signs) {
int answer = 0;
for (int i=0; i<absolutes.size(); i++) {
answer += (signs[i]) ? absolutes[i] : -absolutes[i];
}
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.94MB)
테스트 2 〉 통과 (0.01ms, 3.91MB)
테스트 3 〉 통과 (0.01ms, 3.95MB)
테스트 4 〉 통과 (0.01ms, 3.93MB)
테스트 5 〉 통과 (0.01ms, 3.94MB)
테스트 6 〉 통과 (0.01ms, 3.95MB)
테스트 7 〉 통과 (0.01ms, 3.92MB)
테스트 8 〉 통과 (0.01ms, 3.93MB)
테스트 9 〉 통과 (0.01ms, 3.94MB)
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
로또의 최고 순위와 최저 순위
1차
#include <string>
#include <vector>
using namespace std;
vector<int> solution(vector<int> lottos, vector<int> win_nums) {
vector<int> answer = {7, 7};
for (int i=0; i<lottos.size(); i++) {
if (lottos[i] == 0) {
answer[0]--;
continue;
}
for (int j=0; j<win_nums.size(); j++) {
if (lottos[i] == win_nums[j]) {
answer[0]--;
answer[1]--;
break;
}
}
}
if (answer[0] == 7) answer[0] = 6;
if (answer[1] == 7) answer[1] = 6;
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.94MB)
테스트 2 〉 통과 (0.01ms, 3.94MB)
테스트 3 〉 통과 (0.01ms, 3.88MB)
테스트 4 〉 통과 (0.01ms, 3.93MB)
테스트 5 〉 통과 (0.01ms, 3.89MB)
테스트 6 〉 통과 (0.01ms, 3.92MB)
테스트 7 〉 통과 (0.01ms, 3.94MB)
테스트 8 〉 통과 (0.01ms, 3.94MB)
테스트 9 〉 통과 (0.01ms, 3.95MB)
테스트 10 〉 통과 (0.01ms, 3.94MB)
테스트 11 〉 통과 (0.01ms, 3.94MB)
테스트 12 〉 통과 (0.01ms, 3.77MB)
테스트 13 〉 통과 (0.01ms, 3.93MB)
테스트 14 〉 통과 (0.01ms, 3.94MB)
테스트 15 〉 통과 (0.01ms, 3.94MB)
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
소수 만들기
1차
#include <vector>
#include <iostream>
#include <cmath>
using namespace std;
bool isPrime(int num) {
if (num < 2) return false;
for (int i=2; i<=sqrt(num); i++) {
if (num % i == 0) return false;
}
return true;
}
int solution(vector<int> nums) {
int answer = 0;
for (int i=0; i<nums.size(); i++) {
for (int j=i+1; j<nums.size(); j++) {
for (int k=j+1; k<nums.size(); k++) {
if(isPrime(nums[i] + nums[j] + nums[k])) answer++;
}
}
}
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.08ms, 3.96MB)
테스트 2 〉 통과 (0.11ms, 3.83MB)
테스트 3 〉 통과 (0.03ms, 3.96MB)
테스트 4 〉 통과 (0.03ms, 3.95MB)
테스트 5 〉 통과 (0.13ms, 3.96MB)
테스트 6 〉 통과 (0.21ms, 3.93MB)
테스트 7 〉 통과 (0.02ms, 3.96MB)
테스트 8 〉 통과 (0.48ms, 3.96MB)
테스트 9 〉 통과 (0.04ms, 3.83MB)
테스트 10 〉 통과 (0.46ms, 3.96MB)
테스트 11 〉 통과 (0.01ms, 3.94MB)
테스트 12 〉 통과 (0.01ms, 3.96MB)
테스트 13 〉 통과 (0.01ms, 3.95MB)
테스트 14 〉 통과 (0.01ms, 3.96MB)
테스트 15 〉 통과 (0.01ms, 3.96MB)
테스트 16 〉 통과 (0.63ms, 3.94MB)
테스트 17 〉 통과 (0.11ms, 3.94MB)
테스트 18 〉 통과 (0.01ms, 3.82MB)
테스트 19 〉 통과 (0.01ms, 3.95MB)
테스트 20 〉 통과 (0.88ms, 3.95MB)
테스트 21 〉 통과 (0.80ms, 3.9MB)
테스트 22 〉 통과 (0.03ms, 3.96MB)
테스트 23 〉 통과 (0.01ms, 3.93MB)
테스트 24 〉 통과 (0.65ms, 3.95MB)
테스트 25 〉 통과 (0.70ms, 3.96MB)
테스트 26 〉 통과 (0.01ms, 3.93MB)
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
약수의 개수와 덧셈
1차
#include <string>
#include <vector>
#include <cmath>
using namespace std;
int solution(int left, int right) {
int answer = 0;
for (int i=left; i<=right; i++) {
if (sqrt(i) == (int) sqrt(i)) answer -= i;
else answer += i;
}
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.94MB)
테스트 2 〉 통과 (0.01ms, 3.95MB)
테스트 3 〉 통과 (0.01ms, 3.95MB)
테스트 4 〉 통과 (0.01ms, 3.95MB)
테스트 5 〉 통과 (0.01ms, 3.99MB)
테스트 6 〉 통과 (0.01ms, 3.96MB)
테스트 7 〉 통과 (0.01ms, 3.93MB)
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
3진법 뒤집기
1차
#include <string>
#include <vector>
using namespace std;
int solution(int n) {
int answer = 0;
string three = "";
for (; n>0; n/=3) {
three = to_string(n%3) + three;
}
for (int i=1; !three.empty(); i*=3) {
answer += (three[0] - '0') * i;
three.replace(0, 1, "");
}
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.77MB)
테스트 2 〉 통과 (0.02ms, 3.94MB)
테스트 3 〉 통과 (0.02ms, 3.94MB)
테스트 4 〉 통과 (0.01ms, 3.91MB)
테스트 5 〉 통과 (0.02ms, 3.96MB)
테스트 6 〉 통과 (0.02ms, 3.93MB)
테스트 7 〉 통과 (0.01ms, 3.93MB)
테스트 8 〉 통과 (0.01ms, 3.89MB)
테스트 9 〉 통과 (0.02ms, 3.95MB)
테스트 10 〉 통과 (0.02ms, 3.97MB)
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
Level 3
숫자 게임
1차
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int num = 0;
bool cmp (int a, int b) {
if ((num < a && num < b) || (num >= a && num >= b)) {
return a > b;
} else if (num < a) return false;
else return true;
}
int solution(vector<int> A, vector<int> B) {
int answer = 0;
for (auto now_enemy_number:A) {
num = now_enemy_number;
sort(B.begin(), B.end(), cmp);
if (B.back() > now_enemy_number) answer++;
B.pop_back();
}
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.95MB)
테스트 2 〉 통과 (0.01ms, 3.94MB)
테스트 3 〉 통과 (0.02ms, 3.77MB)
테스트 4 〉 통과 (0.01ms, 3.98MB)
테스트 5 〉 통과 (0.03ms, 3.93MB)
테스트 6 〉 통과 (0.07ms, 3.93MB)
테스트 7 〉 통과 (0.08ms, 3.89MB)
테스트 8 〉 통과 (2.29ms, 3.93MB)
테스트 9 〉 통과 (9.86ms, 3.79MB)
테스트 10 〉 통과 (4.40ms, 3.71MB)
테스트 11 〉 통과 (11.84ms, 3.96MB)
테스트 12 〉 통과 (2.72ms, 3.97MB)
테스트 13 〉 통과 (668.34ms, 3.95MB)
테스트 14 〉 통과 (1656.10ms, 4.11MB)
테스트 15 〉 통과 (734.57ms, 4.1MB)
테스트 16 〉 통과 (1434.48ms, 4.17MB)
테스트 17 〉 통과 (36.99ms, 3.96MB)
테스트 18 〉 통과 (145.58ms, 3.97MB)
효율성 테스트
테스트 1 〉 실패 (시간 초과)
테스트 2 〉 실패 (시간 초과)
테스트 3 〉 실패 (시간 초과)
채점 결과
정확성: 85.7
효율성: 0.0
합계: 85.7 / 100.0
2차
#include <string>
#include <vector>
#include <algorithm>
#include <list>
using namespace std;
int solution(vector<int> A, vector<int> B) {
int answer = 0;
list <int> b_number(B.begin(), B.end());
b_number.sort();
for (auto now_enemy_number:A) {
if (b_number.back() > now_enemy_number) {
answer++;
for(list <int>::iterator iter = b_number.begin(); iter != b_number.end(); iter++) {
if (*iter > now_enemy_number) {
b_number.erase(iter);
break;
}
}
} else {
b_number.pop_front();
}
}
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.94MB)
테스트 2 〉 통과 (0.01ms, 3.97MB)
테스트 3 〉 통과 (0.01ms, 3.82MB)
테스트 4 〉 통과 (0.01ms, 3.91MB)
테스트 5 〉 통과 (0.02ms, 3.71MB)
테스트 6 〉 통과 (0.02ms, 3.96MB)
테스트 7 〉 통과 (0.02ms, 3.98MB)
테스트 8 〉 통과 (0.02ms, 3.97MB)
테스트 9 〉 통과 (0.32ms, 3.95MB)
테스트 10 〉 통과 (0.16ms, 3.78MB)
테스트 11 〉 통과 (0.33ms, 3.96MB)
테스트 12 〉 통과 (0.12ms, 3.96MB)
테스트 13 〉 통과 (32.71ms, 4.21MB)
테스트 14 〉 통과 (79.06ms, 4.22MB)
테스트 15 〉 통과 (38.02ms, 4.21MB)
테스트 16 〉 통과 (79.19ms, 4.39MB)
테스트 17 〉 통과 (0.15ms, 3.95MB)
테스트 18 〉 통과 (0.37ms, 3.99MB)
효율성 테스트
테스트 1 〉 실패 (시간 초과)
테스트 2 〉 실패 (시간 초과)
테스트 3 〉 실패 (시간 초과)
채점 결과
정확성: 85.7
효율성: 0.0
합계: 85.7 / 100.0
3차
#include <string>
#include <vector>
#include <list>
#include <algorithm>
using namespace std;
int solution(vector<int> A, vector<int> B) {
int answer = 0;
list <int> a_number(A.begin(), A.end());
list <int> b_number(B.begin(), B.end());
a_number.sort(greater<>());
b_number.sort(greater<>());
for (auto now_enemy_number:a_number) {
if (b_number.front() > now_enemy_number) {
answer++;
b_number.erase(find_if(b_number.begin(), b_number.end(), [now_enemy_number] (int n) ->bool {if (n > now_enemy_number) return true;}));
} else {
b_number.pop_back();
}
}
return answer;
}
정확성 테스트
테스트 1 〉 통과 (0.01ms, 3.96MB)
테스트 2 〉 통과 (0.01ms, 3.71MB)
테스트 3 〉 통과 (0.01ms, 3.89MB)
테스트 4 〉 통과 (0.01ms, 3.98MB)
테스트 5 〉 통과 (0.02ms, 3.97MB)
테스트 6 〉 통과 (0.03ms, 3.96MB)
테스트 7 〉 통과 (0.02ms, 3.96MB)
테스트 8 〉 통과 (0.03ms, 3.79MB)
테스트 9 〉 통과 (0.21ms, 3.96MB)
테스트 10 〉 통과 (0.13ms, 3.96MB)
테스트 11 〉 통과 (0.23ms, 3.94MB)
테스트 12 〉 통과 (0.11ms, 3.91MB)
테스트 13 〉 통과 (1.50ms, 4.3MB)
테스트 14 〉 통과 (2.50ms, 4.31MB)
테스트 15 〉 통과 (1.65ms, 4.06MB)
테스트 16 〉 통과 (2.10ms, 4.33MB)
테스트 17 〉 통과 (0.33ms, 3.98MB)
테스트 18 〉 통과 (0.70ms, 4.18MB)
효율성 테스트
테스트 1 〉 통과 (37.79ms, 16.3MB)
테스트 2 〉 통과 (36.08ms, 16MB)
테스트 3 〉 통과 (38.41ms, 16MB)
채점 결과
정확성: 85.7
효율성: 14.3
합계: 100.0 / 100.0