YbtOj練習 貪心3 最優密碼

2022-05-08 15:48:13 字數 620 閱讀 4714

這道題暴力拿了90分,正解實在不會寫!

因為字串不好操作,所以乾脆把它變成乙個int的陣列,最後輸出時直接把數字轉換成字元輸出。

首先考慮我們的貪心策略:(下標從1開始),設k為我們已經處理過的位置的個數,初始時k=0。只要我們的操作次數還有剩餘,那麼就考慮第k+1個位置能通過交換操作得到的最小的數字是多少。

**如下

#include#define r register int

using

namespace

std;

const

int inf=0x3f3f3f3f

;typedef

intll;

const

int n=100005

;char

ch[n];

ints[n];

ll m;

intk;

intmain()

}for(r i=tmp;i>k+1;i--)

m-=tmp-k-1;k++;//把r位置的數字移動到l位置,需要使用r-l次操作

}for(r i=1;i<=len;i++) putchar(s[i]);

return0;

}

YbtOj練習 貪心4 修改序列

看到資料範圍,就想寫乙個線性複雜度的演算法,一開始我是這樣的 includeusing namespace std const int n 1e5 5 int n,a n ans,b n intmain 提交後只有50分 資料太水了,竟然拿到了50分 這種做法顯然是錯誤的,因為它只以1為基準構造了乙...

YbtOj練習 貪心 1最大積分

這道題的題意描述有問題。問題很大,導致我wa了無數次。如果看這句話很容易就會理解錯。在我wa了n次之後看到了這兩個字,哦豁,原來這裡的意思是當你在第i級時,如果買的總件數達到了t i 那麼就可以公升級。includeusing namespace std typedef unsigned long ...

ybtoj 貪心 堆 例題3 畜欄預定

傳送門題目 以奶牛開始吃草時間排序 可以發現,只要畜欄的最後一頭奶牛結束吃草時間越早,接上奶牛的可能性就越大 用小根堆,以畜欄的結束吃草時間實時排序 include include include include using namespace std struct dt a 50100 t int...