Time of Update: 2018-12-03
連結:http://codeforces.com/problemset/problem/217/E題意:給你一個字串,長度小於等於300W,再給你兩個數,n,k接下來是n個操作,每個操作是對一段區間操作,將整段區間取出來,偶數位的字元放前面,奇數位的字元放在後面,然後插入這個區間的後面比如 1 11 s1s2... s11,
Time of Update: 2018-12-03
A : 假設已經有了i個數了,而且沒有一段連續的區間異或值為0,那麼我們考慮加入第i+1個數有幾種方法,顯然,第 i+1個數不能等於以i結尾的所有連續區間的異或值,這樣的話第i+1 個數就有2^m-(i+1)中取值,注意,0不能選,所以依次相乘即可B: 將一個數列劃分成兩個數列,要求一個最大的f(i,j) - 最小的f(i,j)的最小值,f(i,j)是這樣定義的:如果i j兩個數在同一個數列中,f(i,j) = i+j,否則f(i,j) = i+ j + h;如果h =
Time of Update: 2018-12-03
我們實驗室主要是做儲存,以後要和儲存打一輩子交道了,忽然想起這些部落格空間等內容怎麼儲存的呢?二、虛擬機器網路設定安裝虛擬機器,以前總是不看分區掛載,唉,NC,以後要看,網路選擇橋接模式,安裝software development。三種工作模式:http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/03/15/1985084.html講的很好a.bridged (橋接) 在這種模式下,VMWare虛擬出來的作業系統就像是區域網路中的一台獨
Time of Update: 2018-12-03
http://www.codeforces.com/problemset/problem/126/D題意:求一個數有多少種 能表示成多少種 若干個非波那且數之和 的方案首先考慮到總的非波那且數的數量很少,所以先預先處理出來,大概是88個,之後就超long long了而且我們可以用數學歸納法證明任何一個正整數都能 表示成若干個非波那且數之和那麼我們就可以先找出這樣一種方案:方案中的最大的非波那且數
Time of Update: 2018-12-03
今天差點玩過了,那怎麼可以呢?和師姐聊天很開心回想了下,今天好像效率有點低在說GIT之前,先提一下CVS、SVNCVS(Concurrent Version System協同版本控制系統)是一個C/S系統,是一個常用的代碼版本控制軟體。主要在開源軟體管理中使用。與它相類似的代碼版本控制軟體有subversion。主要用於多人開發環境下的源碼維護。CVS工作思路:在一台伺服器上建立一個原始碼庫,庫裡可以存放許多不同項目的來源程式。由原始碼庫管理員統一管理這些來源程式。每個使用者在使用原始碼庫之前,
Time of Update: 2018-12-03
改編將上一篇用選擇法對10個整數按從大到小順序排序改為指標#include"stdio.h"void main(){ void sort(int *x,int n); int a[10],i,*p; p=a; for(i=0;i<10;i++) scanf("%d",p++); printf("/n"); p=a; sort(p,10); for(p=a;p<a+10;p++) printf("%d",*p);} void
Time of Update: 2018-12-03
來源:點擊開啟連結去年網路賽第一場的第二個題。當時也想到了用貪心,可是逾時了,現在複習了起來,發現可以用mutliset,先把alice和bob出的卡片按長度排序,再把所有剩下的矩形隊進行貪心,貪當前alice與bob差距最小的矩形隊。用到了upper_bound()參數。#include <iostream>#include <set>#include <algorithm>#include <cstring>#include
Time of Update: 2018-12-03
來源:點擊開啟連結這個題目的來源是人工智慧領域MU猜想。比賽的時候也參考了相關資料,可是最後差一點沒有把規律推出來。注意到以下幾個性質。第一,MI怎麼變換M永遠只能在第一位。第二,因為變換時只能在I和U之間變換,因此,除了第一個是M以外,後面如果有字串不是U、I以內的話永遠不可能變換得到。第三,U可以看成是3個I,無論是I先變換成U再操作還是轉化成一定數量的I,最後再准換成一定數量的U即可,因此將所有的字母用I作為一般等價物進行交換即可。#include
Time of Update: 2018-12-03
題目:點擊開啟連結題目簡化一下就是一個旅行者可以在任意一點出發,遍曆所有頂點後回到原點,問可以走的最短路程。很著名的NP-HARD旅行商問題。TSP問題最簡單的求解方法是枚舉法,時間複雜度是O(n!),其餘的解都是無法證明的最優近似解,但是可以直接拿來用,此外還有類比退火,floyd+DP,Edmonds-Johnson等各種方法,貼個模板吧,可以用poj 2404練一下手。#include <cstdio>#include <iostream>#include <
Time of Update: 2018-12-03
題目來源:點擊開啟連結dfs,注意剪枝。比如加起來餘4要等於0,網上許多題解講的比較詳細。#include <iostream>#include <cstring>#include <algorithm>using namespace std;bool visited[25];int stick[25];int des_len;int sticknum;bool cmp(int a,int b){return b>a;}bool dfs(int len,
Time of Update: 2018-12-03
題目:點擊開啟連結很水的一道題,但是處理兩行之間的空格花了許多功夫,最後還是用了char,因為可以自由修改,相比string需要用insert函數,更加靈活一些。也可以用hash來做,不過有些麻煩就是了。#include <iostream>#include <string>#include <map>#include <cstdio>using namespace std;int main(){char d1[50],d2[50];string
Time of Update: 2018-12-03
http://www.lydsy.com/JudgeOnline/problem.php?id=2565求出最長的子串可以分成兩個迴文串先處理出以每個位置為中心的最長迴文子串,然後我是求了兩個這樣的數組left[] right[],分別表示某位置往左最長的迴文子串(以該位置結尾),右邊的雷同需要線性掃兩遍。。。處理這兩個數組的時候細節問題整了半天,所幸最後還是整出來了。#include<cstdio>#include<cstring>#include<vector&
Time of Update: 2018-12-03
http://acm.hdu.edu.cn/showproblem.php?pid=4276題意:一棵樹,讓你在規定時間T內從1號節點走到n號節點,並取得最多的寶藏值。很容易可以想到一個這樣子的樹形DP,dp[u][t]表示u子樹走t長度的距離時所能獲得的最大價值,然後就是1 到
Time of Update: 2018-12-03
來源:點擊開啟連結水題一道,由推斷可知,如果停車點在首尾兩個點的外邊,那麼會至少行進2*(Pi-P0)+K(i為最右面的商鋪,K不定反正大於0),而設在內部,只需要行進最多2*(Pi-P0)的距離,而一個來回是一定要走的,關鍵是第二個來回怎麼儘可能的省出來,資料不大,暴搜就行了。#include <iostream>#include <cstring>#include <algorithm>#include <cstdio>using
Time of Update: 2018-12-03
昨天因為貪點小利,沒有搬磚,給自己找個借口。聽說今天要考核,都緊張了,只是GIT看了快一個星期,想想被鄙視也應該的,NC,唉。我不抱怨,我不發牢騷,我多搬磚。整理了一下過程,又熟悉了一遍一、準備階段yum install git-coregit config --global user.name ' admin'git config --global user.email admin@gmail.comssh-keygen -t rsavim ~/.ssh/config二、分支合并git
Time of Update: 2018-12-03
#include "stdio.h" main(){ union { unsigned char c; unsigned int i[4]; }z; z.i[0]=0x39; z.i[1]=0x36; printf("%c",z.c);} 輸出結果是9。整型資料兩個位元組,字元型資料一個位元組,怎麼把整型資料賦給字元型變數?解釋:直接把整形資料的低8位送到char 型變數。 數值在電腦記憶體中是怎麼儲存的呢?1.1.0 位 & 位元模式 & 位元組
Time of Update: 2018-12-03
light oj 1032 數位DPhttp://www.lightoj.com/volume_showproblem.php?problem=1032題意:給一個整數N N (0 ≤ N < 231),問從0 到 N 所有的數的位元中連續兩個‘1’
Time of Update: 2018-12-03
GIT常用命令發現個總結的很好blog,請參考:http://blog.csdn.net/ariesjzj/article/details/7747876git add:跟蹤新檔案、把已跟蹤的檔案放到暫存區、還能用於合并時把有衝突的檔案標記為已解決狀態git status:檢查當前檔案狀態git diff:比較的是工作目錄中當前檔案和暫存地區快照之間的差異,也就是修改之後還沒有暫存起來的變化內容。 git diff --cached:比較的是已經暫存起來的檔案和上次提交時的快照之間的差異git
Time of Update: 2018-12-03
家裡煤礦搬遷,要搬了,腰包了,村子裡都在蓋二層,於是搬磚。北京樓價太貴,要買房,只能現在開始一塊一塊,慢慢搬磚,少發點牢騷,多搬點磚。每天記錄自己學到的,加油,搬磚工。一、夥伴演算法 1.夥伴系統Linux核心中採用了一種同時適用於32位和64位系統的記憶體分頁模型,對於32位系統來說,兩級頁表足夠用了,而在x86_64系統中,用到了四級頁表,頁全域目錄,頁上級目錄,頁中間級目錄,頁表。每個頁表項指向一個頁框,在Linux中採用4KB大小的頁框作為標準的記憶體配置單元。 2.基於夥伴演算法的
Time of Update: 2018-12-03
嗖地一下,來到了8月12,明天是七夕。gcc命令 和 選項詳情參考:http://blog.csdn.net/lemon_fantasy/article/details/3160589gcc and g++分別是gnu的c & c++編譯器