/**
 * @param {string} haystack
 * @param {string} needle
 * @return {number}
 */
let strStr = function(haystack, needle) {
  return haystack.indexOf(needle)
};

https://leetcode.com/problems/implement-strstr

 

Implement strStr() - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

 

 

'알고리즘 문제' 카테고리의 다른 글

[백준] 두 수의 합  (0) 2021.02.01
[백준] 정열적인 정렬  (0) 2021.02.01
[백준] 수 정렬하기4  (0) 2021.02.01
[백준] 카드  (0) 2021.02.01
[백준] 배열 합치기  (0) 2021.02.01

정렬 + 투 포인터문제

 

#include <iostream>
#include <vector>
#include <algorithm>
#include <map>

using namespace std;

int arr[100001];

int main()
{
    int n, target, s = 0, e;
    cin >> n;
    e = n - 1;

    for (int i = 0; i < n; i++)
        cin >> arr[i];
    cin >> target;

    sort(arr, arr + n);

    int cnt = 0;

    while (s < e) {
        int value = arr[s] + arr[e];
        if (value == target) {
            cnt++;
            e--;
            s++;
        }
        else if (value > target)  e--;
        else s++;
    }
    cout << cnt;
    return 0;
}

'알고리즘 문제' 카테고리의 다른 글

implement-strstr - Javascript  (0) 2021.11.25
[백준] 정열적인 정렬  (0) 2021.02.01
[백준] 수 정렬하기4  (0) 2021.02.01
[백준] 카드  (0) 2021.02.01
[백준] 배열 합치기  (0) 2021.02.01

 

#include <iostream>
#include <vector>
#include <algorithm>
#include <map>

using namespace std;

int arr[500001];

int main()
{
    int n;
    cin >> n;
    for (int i = 0; i < n; i++)
        cin >> arr[i];

    sort(arr, arr + n);

    for (int i = 0; i < n; i++)
        printf("%d ", arr[i]);
    return 0;
}

'알고리즘 문제' 카테고리의 다른 글

implement-strstr - Javascript  (0) 2021.11.25
[백준] 두 수의 합  (0) 2021.02.01
[백준] 수 정렬하기4  (0) 2021.02.01
[백준] 카드  (0) 2021.02.01
[백준] 배열 합치기  (0) 2021.02.01

 

#include <iostream>
#include <vector>
#include <algorithm>
#include <map>

using namespace std;

int arr[1000001];

int main()
{
    int n;
    cin >> n;
    for (int i = 0; i < n; i++)
        scanf("%d", &arr[i]);

    sort(arr, arr + n, greater<int>());

    for (int i = 0; i < n; i++)
        printf("%d\n", arr[i]);
    return 0;
}

'알고리즘 문제' 카테고리의 다른 글

[백준] 두 수의 합  (0) 2021.02.01
[백준] 정열적인 정렬  (0) 2021.02.01
[백준] 카드  (0) 2021.02.01
[백준] 배열 합치기  (0) 2021.02.01
[CODEUP] 범인을 잡아라1  (0) 2021.01.31
#include <iostream>
#include <vector>
#include <algorithm>
#include <map>

using namespace std;

int main()
{
    int n;
    long long temp;
    map<long long, int> msi;
    pair<long long, int> ans = { 0, 0 };

    cin >> n;
    for (int i = 0; i < n; i++) {
        scanf("%lld", &temp);

        if (msi.find(temp) == msi.end()) // 입력값이 map에 없을 경우
            msi[temp] = 0;
        msi[temp]++; //
        
        if (ans.second == msi[temp]) {
            if (ans.first > temp){
                ans = { temp, msi[temp] };
            }
        }
        else if (ans.second < msi[temp])
            ans = { temp, msi[temp] };
    }

    cout << ans.first << endl;
    return 0;
}

'알고리즘 문제' 카테고리의 다른 글

[백준] 정열적인 정렬  (0) 2021.02.01
[백준] 수 정렬하기4  (0) 2021.02.01
[백준] 배열 합치기  (0) 2021.02.01
[CODEUP] 범인을 잡아라1  (0) 2021.01.31
[CODEUP] 기억력 테스트 2  (0) 2021.01.31
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int n, m;
int n_idx = 0, m_idx = 0;

int main()
{
    cin >> n >> m;
    vector<int> vin(n), vim(m);
    vector<int> ans;

    for (int i = 0; i < n; i++)
        scanf("%d", &vin[i]);
    for (int i = 0; i < m; i++)
        scanf("%d", &vim[i]);

    for (;;) {
    	// vin이나 vim이 끝에 도달했으면 남은 값들 푸쉬
        if (n_idx == n)
            for (; m_idx < m; m_idx++)
                ans.push_back(vim[m_idx]);
        else if (m_idx == m)
            for (; n_idx < n; n_idx++)
                ans.push_back(vin[n_idx]);
		
        //탈출 조건
        if (n_idx == n || m_idx == m) break;

        if (vin[n_idx] > vim[m_idx]) {
            ans.push_back(vim[m_idx]);
            m_idx++;
        }
        else if (vin[n_idx] < vim[m_idx]) {
            ans.push_back(vin[n_idx]);
            n_idx++;
        }
        else {
            ans.push_back(vim[m_idx]);
            ans.push_back(vin[n_idx]);
            m_idx++;
            n_idx++;
        }
    }

    for (int i = 0, size = ans.size(); i < size; i++)
        printf("%d ", ans[i]);
    return 0;
}

'알고리즘 문제' 카테고리의 다른 글

[백준] 수 정렬하기4  (0) 2021.02.01
[백준] 카드  (0) 2021.02.01
[CODEUP] 범인을 잡아라1  (0) 2021.01.31
[CODEUP] 기억력 테스트 2  (0) 2021.01.31
[CODEUP] 범인을 잡아라 2  (0) 2021.01.31

 

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main()
{
    string str;
    int ans = 0;
    cin >> str;
    for (int i = 0, len = str.length(); i < len; i++)
        ans += (str[i] - '0');

    cout << (ans % 7 == 4 ? "suspect" : "citizen");
    return 0;
}

'알고리즘 문제' 카테고리의 다른 글

[백준] 카드  (0) 2021.02.01
[백준] 배열 합치기  (0) 2021.02.01
[CODEUP] 기억력 테스트 2  (0) 2021.01.31
[CODEUP] 범인을 잡아라 2  (0) 2021.01.31
[CODEUP] 자리 배치  (0) 2021.01.31

아슬아슬하게 통과한 코드

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main()
{
    int m;
    cin >> m;
    vector<int> vim(m);
    for (int i = 0; i < m; i++)
        scanf("%d", &vim[i]);

    sort(vim.begin(), vim.end());

    int n;
    int temp;
    cin >> n;
    vector<int> vin(n);

    for (int i = 0; i < n; i++) {
        scanf("%d", &temp);
        printf("%d ", binary_search(vim.begin(), vim.end(), temp));
    }
    return 0;
}

'알고리즘 문제' 카테고리의 다른 글

[백준] 배열 합치기  (0) 2021.02.01
[CODEUP] 범인을 잡아라1  (0) 2021.01.31
[CODEUP] 범인을 잡아라 2  (0) 2021.01.31
[CODEUP] 자리 배치  (0) 2021.01.31
[CODEUP] 정렬된 두 배열 합치기  (0) 2021.01.31

+ Recent posts