오답노트

[정렬] BOJ 7795번 먹을 것인가 먹힐 것인가 본문

C,C++/코딩테스트

[정렬] BOJ 7795번 먹을 것인가 먹힐 것인가

권멋져 2022. 6. 7. 18:06
https://www.acmicpc.net/problem/7795
 

7795번: 먹을 것인가 먹힐 것인가

심해에는 두 종류의 생명체 A와 B가 존재한다. A는 B를 먹는다. A는 자기보다 크기가 작은 먹이만 먹을 수 있다. 예를 들어, A의 크기가 {8, 1, 7, 3, 1}이고, B의 크기가 {3, 6, 1}인 경우에 A가 B를 먹을

www.acmicpc.net

- 문제 파악

수열 A와 B가 주어진다 수열 A의 원소와 수열 B의 원소를 비교했을 때, 수열 A가 큰 쌍의 개수를 출력하라

 

- 정답

#include "bits/stdc++.h"

using namespace std;

int arrA[20005];
int arrB[20005];

int main()
{
    cin.tie(0);
    cout.tie(0);
    ios::sync_with_stdio(0);
    
    int n;
    cin>> n;
    
    while(n--)
    {
        int A,B;
        cin>> A>>B;
        
        for(int i = 0 ; i< A ;i++)
            cin>>arrA[i];
        
        sort(arrA,arrA+A);
        
        for(int i = 0 ; i< B ;i++)
            cin>>arrB[i];
        
        sort(arrB,arrB+B);
        
        int nCnt = 0;
        
        for(int i = A-1 ; i >= 0 ;i--)
        {
            for(int j = B-1 ; j >= 0 ; j--)
            {
                if(arrA[i] > arrB[j])                    
                {
                    nCnt += j + 1;
                    break;
                }
                    
            }
        }
        
        cout<<nCnt<<"\n";
        
    }
}