zoukankan      html  css  js  c++  java
  • NOIP 2013 火柴排队 程序

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 const int MAXN = 100000 + 1;
     4 const int MOD = 99999997;
     5 int n, F[MAXN], C[MAXN];
     6 struct node
     7 {
     8     int N, H;
     9 }Match1[MAXN], Match2[MAXN];
    10 void Update(int x)
    11 {
    12     for (int i = x; i <= n; i += i&(-i))
    13         F[i]++;
    14 }
    15 int Query(int x)
    16 {
    17     int S = 0;
    18     for (int i = x; i > 0; i -= i&(-i))
    19         S += F[i];
    20     return S;
    21 }
    22 bool comp(node x, node y)
    23 {
    24     return x.H < y.H;
    25 }
    26 int main()
    27 {
    28     cin >> n;
    29     for (int i = 1; i <= n; i++)
    30     {
    31         cin >> Match1[i].H;
    32         Match1[i].N = i;
    33     }
    34     for (int i = 1; i <= n; i++)
    35     {
    36         cin >> Match2[i].H;
    37         Match2[i].N = i;
    38     }
    39     sort(Match1 + 1, Match1 + (n+1), comp);
    40     sort(Match2 + 1, Match2 + (n+1), comp);
    41     for (int i = 1; i <= n; i++)
    42     {
    43         C[Match1[i].N] = Match2[i].N;
    44     }
    45     int Sum = 0;
    46     for (int i = 1; i <= n; i++)
    47     {
    48         Update(C[i]);
    49         Sum += i-Query(C[i]);
    50         Sum %= MOD;
    51     }
    52     cout << Sum << endl;
    53     return 0;
    54 }
    View Code

    https://paste.ubuntu.com/p/Ckw9kpZ9qw/

  • 相关阅读:
    Repeatable Read
    Read Committed
    Read Uncommitted
    sql 事务
    实用sql语句
    管理mysql
    mysql
    sql delete语句
    sql update语句
    sql INSERT语句
  • 原文地址:https://www.cnblogs.com/OIerPrime/p/8976485.html
Copyright © 2011-2022 走看看