欧美1区2区3区激情无套,两个女人互添下身视频在线观看,久久av无码精品人妻系列,久久精品噜噜噜成人,末发育娇小性色xxxx

美團(tuán)4.1春招筆試編程題

第一題:排列一個(gè)數(shù)組,使得兩兩差值的絕對(duì)值和最小

貪心,數(shù)組排序之后,相鄰兩兩相減,注意答案可能會(huì)爆int,開(kāi)long long。

第二題:有一組展品,每個(gè)展品有價(jià)值,一共進(jìn)行m次操作,操作為0時(shí)修改展品價(jià)值,操作為1時(shí)查看展品價(jià)值和

使用樹(shù)狀數(shù)組,抽象出問(wèn)題模型就是一個(gè)單點(diǎn)修改、區(qū)間查詢(xún)的模板。

#include <bits/stdc++.h>

using i64 = long long;

const int N = 50010;

int n, m;
int o[N], tr[N];
std::pair<int, int> p[N];

void add(int x, int k) {
  for (int i = x; i <= n; i += i & -i) {
    tr[i] += k;
  }
}

i64 sum(int x) {
  i64 ret = 0;
  for (int i = x; i; i -= i & -i) {
    ret += tr[i];
  }
  return ret;
}

int main() {
  std::ios::sync_with_stdio(0);
  std::cin.tie(nullptr);
  
  std::cin >> n >> m;
  for (int i = 0; i < m; i++) {
    std::cin >> o[i];
  }
  for (int i = 0; i < m; i++) {
    std::cin >> p[i].first;
  }
  for (int i = 0; i < m; i++) {
    std::cin >> p[i].second;
  }
  
  std::vector<i64> ans;
  for (int i = 0; i < m; i++) {
    if (o[i] == 0) {
      add(p[i].first, -(sum(p[i].first) - sum(p[i].first - 1)));
      add(p[i].first, p[i].second);
    } else {
      ans.push_back(sum(p[i].second) - sum(p[i].first - 1));
    }
  }
  
  for (int i = 0; i < ans.size(); i++) {
    std::cout << ans[i] << " \n"[i == ans.size() - 1];
  }
  
  return 0;
}

全部評(píng)論
編程題難還是算法題難?
點(diǎn)贊 回復(fù) 分享
發(fā)布于 2023-04-02 20:18 吉林
還好只靠?jī)深}。
點(diǎn)贊 回復(fù) 分享
發(fā)布于 2023-04-02 20:12 山東

相關(guān)推薦

風(fēng)的葉脈:不知道但我想要鞭打你( '-' )ノ)`-' ) 加油
點(diǎn)贊 評(píng)論 收藏
分享
評(píng)論
點(diǎn)贊
2
分享

創(chuàng)作者周榜

更多
牛客網(wǎng)
??推髽I(yè)服務(wù)