題意;
n為快取記憶體區容量(儲存幾個字母)
若當前字母快取**現,則改字母的使用次數+1
當快取區存滿後,若有新的字母出現,就需要替換快取區中最近使用次數最少的(次數相同,則替換最早出現的那個)。
!即輸出當前快取區的內容
例如:5 abc!deaf!b!
快取區容量為5
存入:a b c d e
1 1 1 1 1(使用次數)
讀到第六位—a時,快取區中有,則增加使用次數
a b c d e
2 1 1 1 1(使用次數)
讀到第七位—f時,快取區已滿且無f,則把b替換掉
a f c d e
2 1 1 1 1(使用次數)
讀到第八位—b時,快取區已滿且無b,則把c替換掉
a f b d e
2 1 1 1 1(使用次數)
思路:遇到!後,反著推。
即從!位置,向前找n個不同的字母,輸入
假如正推,一開始讀入的字母很可能被後面的代替,不是有效資訊
反推的話,我們知道,乙個字母出現,不管快取區原來有沒有他,他必然會存入快取區內。所以,從!位置,向前找n個不同的字母即可
#include
using
namespace std;
int n;
char pos[
100000
],str[
100000];
map<
char
,int
>mp;
intmain()
for(
int j=k;j>=
1;j--
)printf
("%c"
,pos[j]);
puts(""
);}}
}
linux DNS快取記憶體
配置名稱伺服器 本機ip 172.25.254.117 1 安裝 bind 軟體包 yum install y bind2 編輯 etc named.conf listen on port 53 開啟埠 allow query 允許訪問 forwarders 如果伺服器沒有這個位址就去訪問250 3...
快取記憶體DNS
dns 客戶端修改dns 服務端yum install bind y firewall cmd permanent add service dns firewall cmd reload setenforce 0 netstat antulpe grep named vim etc named.co...
快取記憶體DNS
yum install bind y systemctl start named 啟動dns服務 此時可能需要在虛擬機器中進行無規律的敲鍵盤,動滑鼠等操作 systemctl enable named firewall cmd add service dns 設定dns可通過火牆 step1 首先配...