原创 百度之星資格賽1005 下棋 BFS

下棋      Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Problem Description

原创 poj 3669 bfs水題預處理

//poj3669 m個星會在某個時間某一點墜落,同時它的四周都會被破壞,求從(0,0)最的短時間能走到一個絕對安全的地方 #include<cstdio> #include<cstring> #include<vector> #incl

原创 hihocoder 第八十九周

Given an integer n(n<=10^16), for all integers not larger than n, find the integer with the most divisors. If there is

原创 hdoj5072 容斥原理+三角形染色

#include<iostream> #include<cstdio> #include<cstring> #include<vector> #include<algorithm> using namespace std; typedef

原创 Hibernate4 HibernateSessionFactory

import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; import org.

原创 poj 3168 Treats for the Cows 區間dp

題意:給出的一系列的數字,可以看成一個雙向隊列,每次只能從隊首或者隊尾出隊,第i個出隊就拿這個數乘以i,最後將和加起來,求最大和 由裏向外推,dp[i][j],表示從隊首取了前i個,從隊尾取了後j個,枚舉i,j 狀態轉移方程dp[i][j

原创 poj 3661 Running

//牛在第i分鐘可以休息,可以跑,跑的距離是a[i];,牛有一個疲勞值,剛開始疲勞值爲0,每跑一分鐘疲勞值就會增加1,疲勞值不能超過m//牛每休息一

原创 hdoj Cow Sorting

題意:給你n個無序的數,通過相鄰的兩個數交換,交換的價值是兩個數之和,求使之increasing order的最小代價和 與poj3270不同的是p

原创 poj 3662 二分+最短路,求第k大最小權值

//poj 3662找一條從1到n的路線讓這條路線中,第k大線最小 //先對所有的線段排序,二分枚舉+最短路 #include<cstdio> #include<cstring> #include<vector> #include<ios

原创 hdoj 4911 Inversion 樹狀數組+離散化

題意:給你n個可以重複的無序數列,問經過k次相鄰交換後最少還有多少對逆序數 求逆序對可以用樹狀數組來做,對於重複的元素,可能在sort的時候交換編號 求和的時候要注意去重,還有一種方法就是穩定排序stable_sort #include<

原创 鏈表求和

 鏈表求和      描述 筆記  數據  評測 你有兩個用鏈表代表的整數,其中每個節點包含一個數字。數字存儲按照在原來整數中相反的順序,使得第一個數字位於鏈表的開頭。寫出一個函數將兩個整數相加,用鏈表形式返回和。

原创 poj 3187 Backward Digit Sums (全排列)

先由楊輝三角的性質:sum =C(n-1,0)*num[0] + C(n-1,1)*num[1] +``+ C(n-1,n-1)*num[n-1],先求出底邊各個數對應的係數值,然後再暴搜枚舉num[i]的值。 #include"cst

原创 poj 3628 Bookshelf 2 (01揹包)

給出n個數,求他們部分疊加起來大於m的最小和 #include<stdio.h> #include<string.h> bool dp[20000010]; int c[22]; int main() { int n,m;

原创 poj 3671 Dining Cows 動態規劃

//poj3671 給你n個數只有1和2,可以把1變成2,2變成1,求最小變換次數使1在2前面 #include<cstdio> #include<cstring> #include<vector> #include<iostream>

原创 hdoj 3229 Distant Galaxyg

給出平面上的n個點(n<=100),找一個矩形,使得邊界上包含儘量多的點。 對所有的點進行排序,在對縱座標排序 枚舉上界下界a,b; 用left[i]表示豎線左邊位於上下邊界上的點數(不包括該豎線上的點 ),on[i] 和on2[i],表