日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

牛客练习赛19 E和F(签到就走系列)托米的饮料+托米搭积木

發布時間:2024/6/30 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 牛客练习赛19 E和F(签到就走系列)托米的饮料+托米搭积木 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

E題傳送門:點我

F題傳送門:點我

?

可愛的小托米得到了n瓶飲料. 但他不小心把開蓋的工具弄丟了,所以他只能利用飲料瓶來開蓋.
已知第i個瓶子的品牌為ai,且其能打開bi品牌的瓶子.
問有幾瓶飲料托米無法喝到.
被用于打開飲料瓶的瓶子不一定需要被打開.
一個瓶子不能打開其本身.

輸入描述:

第一行一個整數n,表示飲料的瓶數.
接下來n行,每行兩個整數ai,bi.

輸出描述:

輸出一行一個整數,表示小托米無法喝到的飲料瓶數.

示例1

輸入

4 1 1 2 2 3 3 4 4

輸出

4 示例2

輸入

4 1 2 2 3 3 4 4 1

輸出

0

CF原題:http://codeforces.com/problemset/problem/315/A

讀懂題意注意細節即可。。在CFWA過所以清醒點了

代碼:

n = int(input()) a,b,c= [],[],[1]*n for i in range(n):q = input().split()a.append(q[0])b.append(q[1]) for i in range(n):for j in range(n):if i!=j and a[j]==b[i]:c[j] = 0 print(sum(c))

?

F題:

這天,可愛的小托米得到了n堆積木,且第i堆積木初始時有ai塊積木.

小托米很快就喜歡上了玩積木.
他會作出三種操作:
1.把第v堆的積木數量更改為x.
2.在每堆積木的上面都加上y個積木.
3.數第q堆積木的積木個數.
由于這天可愛的小托米實在是太困了,所以他請你幫他完成這些操作.

輸入描述:

第一行兩個整數n,m. 第二行n個整數,第i個整數代表ai的值. 接下來m行,每行代表一個操作:
第一個整數t代表操作的類型
若t=1,則接下來兩個整數v,x,代表操作1.
若t=2,則接下來一個整數y,代表操作2.
若t=3,則接下來一個整數q,代表操作3.

輸出描述:

對于每個操作3,輸出其對應的答案.

輸入

10 11 1 2 3 4 5 6 7 8 9 10 3 2 3 9 2 10 3 1 3 10 1 1 10 2 10 2 10 3 1 3 10 3 9

輸出

2 9 11 20 30 40 39

1≤n,m≤ 10^5
1≤ai≤10^9
1≤t≤3
1≤v≤ n,1≤ x≤10^9
1≤y≤10^4
1≤q≤n

思路:簡單的單點瞎維護。// 操作一 ?腦子一抽寫了a[x] = add-y。。送上一發WA。

代碼:

#include<bits/stdc++.h> using namespace std; typedef long long LL; int main(){int n,m;LL a[100001];scanf("%d %d",&n,&m);for(int i = 1 ; i <= n ;i ++){scanf("%lld",&a[i]);}LL add = 0;for(int i = 0; i < m ; i ++){int cmd,x;scanf("%d %d",&cmd,&x);if(cmd == 1){LL y;scanf("%lld",&y);a[x] = y-add;}if(cmd == 2){add += x;}if(cmd == 3){printf("%lld\n",a[x] + add + 0LL);}} }

轉載于:https://www.cnblogs.com/Esquecer/p/9123192.html

總結

以上是生活随笔為你收集整理的牛客练习赛19 E和F(签到就走系列)托米的饮料+托米搭积木的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。