끄적끄적 코딩
article thumbnail
[C++] 백준 2903번 중앙 이동 알고리즘
알고리즘 2019. 9. 18. 00:06

변의 길이는 x + (x - 1)씩 증가합니다. n번 만큼 변의길이를 증가시켜주고 n * n을 하여서 전체 점의 개수를 구했습니다. #include #include #include #include #include using namespace std; int main(int argc, char *argv[]) { int n; int x = 2; cin >> n; while(n--) { x += (x - 1); } x *= x; cout

article thumbnail
[C++] 백준 14490번 백대열
알고리즘 2019. 9. 17. 23:38

약분하는 문제입니다. x, y를 입력받고 x, y를 div로 나누어 떨어지는지 확인하고 아닐시 div를 1감소하고 나누어 떨어질때까지 반복합니다. (x > y div = y, x > s; while (1) { if (s[i] == ':') { temp = s.substr(0, i); x = stoi(temp); temp = s.substr(i + 1,..

article thumbnail
[C++] 백준 2959번 거북이
알고리즘 2019. 9. 17. 13:13

4개의 직선으로 가장 큰 넓이의 직사각형을 만드는 문제입니다. 입력받은 수들을 sort한 후에 1번째 수와 3번째 수를 곱하면 최대 넓이가 됩니다. #include #include #include #include #include using namespace std; int main(int argc, char* argv[]) { int num; vector v; for (int i = 0; i > num; v.push_back(num); } sort(v.begin(), v.end()); cout

article thumbnail
[C++] 백준 5052번 전화번호 목록
알고리즘 2019. 9. 16. 23:54

n개의 수가 주어졌을 때 어떤 수가 다른 수의 앞부분에 있으면 NO를 출력합니다. 그렇지 않으면 YES를 출력합니다. 수를 전부 vector에 입력한 후 sort함수로 정렬을 합니다. 그리고 현재 수와 다음 수 (i, i+1)의 문자 길이를 비교합니다. i가 i+1번째 수보다 길이가 크거나 같으면 i+1는 앞부분에 i번째 수가 있을 수 없으므로 continue 해줍니다. 그렇지 않을 경우 i를 i+1의 크기만큼 잘라서 같은지 비교를 해서 같으면 NO를 출력합니다. #include #include #include #include #include using namespace std; int main(int argc, char *argv[]) { int ts; int n; int flag; int curren..

article thumbnail
[C++] 백준 11652번 카드
알고리즘 2019. 9. 16. 12:00

정렬문제입니다. 정렬한 후에 같은 수를 카운트해서 카운트가 가장 큰 수를 출력했습니다. #include #include #include #include #include using namespace std; int main(int argc, char* argv[]) { int n; long long x; long long num; int count = 0; long long manyNum; int manyNumCount = 0; vector v; scanf("%d", &n); for (int i = 0; i < n; ++i) { scanf("%lld", &x); v.push_back(x); } sort(v.begin(), v.end()); num = v[0]; manyNum = v[0]; for (int ..

article thumbnail
[C++] 백준 3047번 ABC
알고리즘 2019. 9. 16. 10:49

세 개의 숫자 중에서 A는 가장 작은 것 B는 중간 C는 가장 큰 것을 나타냅니다. sort함수로 정렬해준 다음 A는 0번째 위치, B는 1번째 위치, C는 2번째 위치를 출력해주었습니다. #include #include #include #include #include using namespace std; int main(int argc, char* argv[]) { int num; string s; vector v; for (int i = 0; i > num; v.push_back(num); } sort(v.begin(), v.end()); cin >> s; for (int i = 0; i < 3; ++i) { if (s[i] == 'A') { cout

article thumbnail
[C++] 백준 10825번 국영수
알고리즘 2019. 9. 16. 10:47

정렬문제입니다. compare함수를 정의해주어서 정렬에 조건을 주었습니다. #include #include #include #include #include using namespace std; vector v; int compare(pair v1, pair v2) { if (v1.second[0] == v2.second[0]) { if (v1.second[1] == v2.second[1]) { if (v1.second[2] == v2.second[2]) { return v1.first v2.second[2]; } return v1.second[1] v2.second[0]..

article thumbnail
[C++] 백준 11004번 K번째 수
알고리즘 2019. 9. 15. 23:33

정렬한 후 K번째의 수를 출력하는 문제입니다. sort함수로 정렬한 후 출력해주었습니다. #include #include #include #include #include #include using namespace std; int main(int argc, char *argv[]) { int n, m; int num; vector v; scanf("%d", &n); scanf("%d", &m); for (int i = 0; i < n; ++i) { scanf("%d", &num); v.push_back(num); } sort(v.begin(), v.end()); printf("%d\n", v[m - 1]); return 0; }

검색 태그