先用sp(b)fa把兩兩點的最短路程是多少,
這樣我們就可以列舉兩個點a,b,再以每個點到a和b的差從大到小排個序,再貪心選,
複雜度:o(
r2c2
nlog2(
n))
#include
#include
#include
#include
#include
#define fo(i,a,b) for(int i=a;i<=b;i++)
#define ok(q,w) (q>0&&w>0&&q<=r&&w<=c)
#define bb b[q][w]
using namespace std;
const int n=22,inf=2107483640;
int read(int &n)
int n,m,ans,r,c;
int b[n][n][n][n];
int a[n*n][2];
int fx[8][2]=,,,,,,,};
int d[n*n][2];
bool z[n][n];
struct qwwwf[n*n];
int min(int q,int w)
void
spfa(int
q,intw)}
i++;
z[q][w]=0;}}
bool px(qwww q,qwww w)
intmain()
sort(f+1,f+1+n,px);
ints=0;
fo(k,1,n/2)s+=f[k].a;
fo(k,n/2+1,n)s+=f[k].b;
ans=min(ans,s);
}printf("%d\n",ans);
return0;}
JZOJ4622 亞瑟王之宮
這題時限開的挺大的。由於時限較大,我們可以預處理出每個座標走日字步到另一座標的最短距離,o r3c3 的floyd可以解決 可以考慮用spfa,但這裡的點入隊時間較長 然後我們列舉兩個匯合點,我們貪心的想,乙個騎士走到第乙個座標距離如果比走到第二個的小的多,那麼我們肯定不走到第二個座標,反之就不走到...
概率 亞瑟王
題目描述 小 k 不慎被 ll 邪教 了,程度深到他甚至想要從亞瑟王邪教中脫坑。他決定,在脫坑之前,最後再來打一盤亞瑟王。既然是最後一戰,就一定要打得漂亮。眾所周知,亞瑟王是乙個看臉的遊戲,技能的發動都是看概率的。作為乙個非洲人,同時作為乙個前 oier,小 k 自然是希望最大化造成傷害的期望值。但...
題解 亞瑟王的宮殿
在此之前,該題已經有很多題解,但它們大多是列舉國王周圍 5 times 5 的範圍 玄學貪心?最後計算最小距離。雖然能 ac 但其實這種做法是不嚴謹的 詳見巨佬的hack資料 然而將 5 times 5 的範圍擴大至 r times c 的範圍後,時間複雜度過大。那麼,這道題真的無解了嗎?蒟蒻的我用...