1. 程式人生 > 實用技巧 >HDU 6890 Express Mail Taking && CCPC 2020網路賽 1003

HDU 6890 Express Mail Taking && CCPC 2020網路賽 1003

這個題把,應該算是思維題,最後出門的時候,帶上最靠近門口的快遞,其他的隨便怎麼拿,每拿一次就要回到K按一次密碼

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int num[1000005];
int main()
{
    int a;
    ios::sync_with_stdio(false);
    cin.tie(0);cout.tie(0);
    cin>>a;
    while(a--){
        int n , m ,k;
        cin>>n>>m>>k;
        
        ll sum 
= 0 ; sum += k-1; for(int i = 0 ; i < m ; i++) cin>>num[i]; sort(num,num+m);//這個櫃子不一定是有序的 int i = 0; if(num[0] < k){///特判第一個 i++; } for(;i < m ; i++){ if(k < num[i]) sum+=(num[i]-k)*2
;/// 走一次按一次櫃子 else if(k > num[i]) sum+=(k-num[i])*2; } sum+=k-1; cout<<sum<<endl; } return 0; }