t1是揹包問題,但是我不知道正解(正解是狀態巧妙的揹包問題)
#include
#include
#include
#include
using
namespace
std;
const
int maxn = 2000 + 100;
int n, m, dp[ maxn + 10 ], tail;
struct p p[ maxn + 10 ];
bool cmp( const p &a, const p &b )
int main( )
}printf( "%d\n", dp[m] );
return
0;}
t2裸狀壓,然而我發現我根本不會狀壓,這道題我們先把所有單層合法狀態列舉出來,然後再進行每一層的dfs,然後統計次數
dfs過程中判斷掉錯誤情況continue掉即可
#include
#include
#include
using namespace std ;
const int mod = 100000000 ;
int lim, n, m, mp[15][15], lim[15], dp[15][ 1
<< 14 ], situ[ 1
<< 14 ], top;
int dfs( int
pos, int t )
return dp[pos][t] = tmp;
}void dfs( int
pos, int t )
if( pos == 1 || ( t & ( 1
<< ( pos - 2 ) ) ) == 0 )
dfs( pos + 1, t + ( 1
<< ( pos - 1 ) ) );
dfs( pos + 1, t );
}int main( )
memset( dp, -1, sizeof(dp) );
dp[0][0] = 1;
printf( "%d", dfs( 1, 0 ) );
return
0;}
t3是單調棧,我們維護幾個陣列分別表示從這一行中每個點最多能到的左邊的位置從這一行中這個點最多能到的右邊的位置,過程中我們維護單調棧即可,哇好難啊我根本不會啊,今天好多人ak了,而且是考了乙個小時就已經ak之後無所事事了,還寫了好多種其他方法的ak大佬,永遠不可及了w…
#include
#include
#include
using
namespace
std ;
int up[1005][1005] , mp[1005][1005] ;
int n , m , sl[1005] , sr[1005] , maxn , l[1005] , r[1005] , top ;
void solve( )
memset( r, 0, sizeof( r ) ); top = 0; r[0] = m + 1;
for( register
int j = m; j; j-- )
for( register
int j = 1; j <= m; j++ )
maxn = max( maxn, ( sr[j] - sl[j] + 1 ) * up[i][j] );
}printf( "%d", maxn );
}int main( )
solve();
return
0;}
t4直接拓撲排序然後計算一下,注意有負數,然後還有一種方法是把超級源連向所有入度為0的點,把所有出度為0的點連向超級匯,然後跑一邊最短路即可
#include
#include
#include
#include
using
namespace
std;
const
int maxn = 2000000 + 10;
int head[maxn], tail, in[maxn], out[maxn], n, m;
long
long ans[maxn], a[maxn];
struct lineline[ maxn * 2 ];
void add_line( int from, int to )
void solve( )
while( !q.empty() )
}for( register
int i = 1; i <= n; i++ ) if( out[i] == 0 ) ass = max( ass, ans[i] );
printf( "%i64d\n", ass );
}int main( )
solve();
return
0;}
2023年9月10日訓練總結
這一次訓練總結是9月8日到9月10日。這段時間的主要目的是參加網路賽鍛鍊自己,同時看線段樹的相關知識。不過知識還是沒看多少,大部分時間還是用在了作業上。那麼就說一下週六參加的比賽吧。週六下午的比賽是烏魯木齊的一場網路賽,題目對於dalao來說好像非常簡單,有34個隊ak了。但是對於我們來說題目依然挺...
2023年10月3日測試
不知為何,wps將pdf轉成word的時候出了問題,所以只好用了qwq 第一題意思是說把一些0轉成1或者把1轉成0,然後使得前面一部分為0,後面一部分為一,當然也可以全0或全1。這個時候也許會想到dp 當然dp也能過,不過可能會卡一卡常數 對於這道題,我們可以用一下字首和,和字尾和。然後對於每乙個位...
2023年2月9日 實習日記
今天在將在ubuntu上配置的環境在rhel上重新進行配置,並找出其中存在的問題。說實話這也是我第一次接觸rhel。首先做乙個啟動盤 工具ultraiso iso兩個 get from intel rhel 7.3 20161019.0 server x86 64 boot.iso rhel 7.3...