CF Gym 100187M Heaviside Function(2점)

3319 단어 function
제목: 함수와 계수를 하나 주고, 질문을 한 무더기 주고, 함수 값을 구한다.
하나하나 긍정 T를 계산하고 s의 기호에 따라 두 조로 나누고 그 다음에 두 조로 나누면 된다.
나는 4분의 1을 썼는데, 당시에는 사차를 비교하여 4분을 썼다
#include<cstdio>

#include<algorithm>

using namespace std;

const int maxn = 200000+1;

int A[maxn];

int B[maxn];

int sz1,sz2;





int main()

{

   // freopen("in.txt","r",stdin);

    int n;

    scanf("%d",&n);

    sz1 = sz2 = 0;

    while(n--){

        int s,a;

        scanf("%d%d",&s,&a);

        if(s>0){

            A[sz1++] = a;

        }else{

            B[sz2++] = -a;

        }

    }

    sort(A,A+sz1);

    sort(B,B+sz2);



    int m;

    scanf("%d",&m);

    while(m--){

        int x;

        scanf("%d",&x);

        printf("%d
",upper_bound(A,A+sz1,x)-A+sz2-(lower_bound(B,B+sz2,x)-B)); } return 0; }

좋은 웹페이지 즐겨찾기