Time of Update: 2018-12-04
/*第二次做這個題目的時候,終於發現題目很水,第一回做的時候逾時了,在原來逾時的代碼上有很大的改進但是效率還是不怎麼高,突然感覺數學對於ACM有很大的用處感覺因為ACM日子過的很充實,我也不知做這個對未來有沒有協助,但是我明顯的感覺到我編程的能力增強了跟著鐘超和張爾東真的學到了好多,特別是分析問題的能力,分析問題的方法,跟他們之間的差距我該用我的努力去彌補,至於明天的省賽,我想我真的儘力,不管結果如何,也不管是不是。。。。或許有些事情是不重要的,關鍵是過程,當然結果好就更好了。加油吧!明天過後我
Time of Update: 2018-12-04
/*那麼如果在一個未知數定死的情況下,要求其它所有未知數的最小值怎麼辦?只要反過來求最長路徑就可以了。最長路徑中的三角不等式與最短路徑中相反:d(v) >= d(u) + w(u, v)也就是 d(v) - d(u) >= w(u, v)很醜的代碼,有很多事參考了的,對於這個差分約束還不是很懂的*/#include <iostream>//2601120 2010-07-13 21:34:22 Accepted 1384 312MS 964K 1268 B C++
Time of Update: 2018-12-04
import java.io.*;import java.util.*;import java.math.*;public class Main {static Scanner in=new Scanner(new BufferedReader(new InputStreamReader(System.in)));public static void main(String[] args){String tep;BigDecimal one =
Time of Update: 2018-12-04
#include<iostream>//2368987 2010-04-21 23:57:41 Accepted 1242 78MS 340K 1316 B C++ 悔惜晟 using namespace std;char map[205][205];int dir[4][2] = { {0, 1}, {0, -1}, {1, 0}, {-1, 0} };int n, m;int si, sj;bool flag;int t;int ri, rj;void dfs(int x,
Time of Update: 2018-12-04
省賽前因為有戰哥超哥在,圖論碰都沒碰,所以最近給自己搞了套網路流題目做做,惡補一下。 結果麼才做了三道題,就被個王傑波秒掉了,鬱悶。。。 今天在做HDU2686——matrix,最大費用流的。一說到這個matrix麼我又要說王傑波了,今天叫我推薦電影,可這麼大個人居然駭客帝國一點都沒看過,唉~~~PS:直接寫名字覺得很彆扭,本來想叫波波的,可是有個上海人很噁心,直接稱呼自己為這個,那我就不這麼叫了。 之前只知道費用流解法是找個最短或最長路然後增廣,最大費用就最長路麼,那這樣每次都
Time of Update: 2018-12-04
import java.io.*;import java.util.*;import java.math.*;public class Mainpku2305 {static Scanner in=new Scanner(new BufferedReader(new InputStreamReader(System.in)));public static void main(String[] args){int b;while(in.hasNext()){b = in.nextInt();if(
Time of Update: 2018-12-04
擴充歐幾裡德和模線性性方程定理一:設 a, b, c 是三個不全為 0 的整數。如果 a= b* q+ c, 其中 q 是整數,則 (a,b)= (b,c).證明:設 d1= (a,b), d2= (b,c). 有 d1| a+ (-q)* b,所以 d1| c,因而 d1 為 b, c 的公約數,所以 d1<= d2。同理,d2 是 a, b 的公因數,有 d2<= d1,故 d1== d2,定理成立。由定理一,可得到求最大公約數的歐幾裡德演算法:int gcd( int a,
Time of Update: 2018-12-04
題意:農夫找丟失的牛,x->x-1,x->x+1,x->2*x三種走法,牛不動,求最短的時間找到牛,用bfs。#include<iostream>#include<queue>using namespace std;#define size 100005int tag[size];void bfs(int n,int k){ if(n==k) { cout<<tag[n]<<endl;
Time of Update: 2018-12-04
轉載自 xh176233756最終編輯 xh176233756計算幾何頭疼的地方一般在於代碼量大和精度問題,代碼量問題只要平時注意積累模板一般就不成問題了。精度問題則不好說,有時候一個精度問題就可能成為一道題的瓶頸,簡直“畫龍點睛”。這些年的題目基本是朝著越來越不卡精度的方向發展了,但是也不乏一些%^&%題#$%$^,另外有些常識不管題目卡不卡,都是應該知道的。今天我就開膛回顧下見過且還有印象的精度問題,由於本人見識和記憶均有限,望各位大神瞄過後不吝補充。另外,為了彌補我匱乏的文思,我可
Time of Update: 2018-12-04
用的是廣搜,搜尋題也做了幾天了,慢慢找到點感覺了。這題沒多大變化,就是變成三維的咯。<code>#include<iostream>#include<queue>using namespace std;#define size 15int n;char map[size][size][size];bool visit[size][size][size];int sx, sy, sz;int ex, ey, ez;int dir[6][3]={{0,0,-1}
Time of Update: 2018-12-04
/*對於雙廣一直很害怕,一直不敢去寫。。。對於狀態的儲存總是感覺很陌生,可是BFS DFS 中的狀態很重要,好好學狀態以前就想寫這個題目。。。終於AC了。。*/#include <iostream>#include <cstdio>#include <bitset>#include <cstdio>#include <cstring>#include <algorithm>#include
Time of Update: 2018-12-04
題意:給你一個n*n的矩陣,S = A + A2 + A3 + … + Ak.求Smodm。話說相當經典的一個題目。兩次用到二分的思想。還有這題特別有意義,哈哈,第一次用類和對象寫acm的代碼。不紀念一下怎麼行呢。哈哈#include<iostream>using namespace std;#define size 35int n;int m;class Matrix{ public: int map[size][size]; void getdata() {
Time of Update: 2018-12-04
相關題目: http://acm.hdu.edu.cn/showproblem.php?pid=2824 pku 2478(與前n個數互質的個數的求和) http://acm.hdu.edu.cn/showproblem.php?pid=3508 素因子的積 http://acm.hdu.edu.cn/showproblem.php?pid=2710 題目很簡單,就是輸出N個數素數因子最大的那一個 http://acm.hdu.edu.cn/showproblem.php?pid=3307
Time of Update: 2018-12-04
/*對於這個題目我又該做何解釋,Dijsk是過了的,可是優先隊列 + BFS 就是Wrong,想不明白,xwc也改不出來漸漸的覺得我就是一個悲劇,為何總是會出現那麼離奇的事情呢?開始對自己無語了,一下幾乎完全是XWC的代碼,因為我實在在自己寫的找不出錯誤。何也??求最短路和比最短路長一的路的總條數.解法一、A*求第K短路,把前面K條路都求出來,象pku 2449
Time of Update: 2018-12-04
//f(i,j)= {f(i-1,j-1)+1 (a[i]==b[j]) // max(f(i-1,j),f(i,j-1)) (a[i]!=b[j]) ////由於f(i,j)只和f(i-1,j-1), f(i-1,j)和f(i,j-1)有關, 而在計算f(i,j)時, 只要選擇一個合適的順序, 就可以保證這三項都已經計算出來了, 這樣就可以計算出f(i,j). 這樣一直推到f(len(a),len(b))就得到所要求的解了.#include<iostream>//23
Time of Update: 2018-12-04
題目大意:有n種物品,每種物品有ai件,現將物品分人,要沒人得到m種不同的物品,要求可以滿足的最多的人數。 解題思路:令sum為物品總數,ave
Time of Update: 2018-12-04
/*根據分析寫的代碼wrrong了,先放在這裡,如果哪位大牛會的話,麻煩幫忙修改下把m天時間當成背包,每門課分成一類,每一類裡有m個物品分別是上該門課j天得到的收穫,同一類物品只能選一個這道題目太傻比了,輸入的是n * m 的, 而我輸入是n * n可惡的sample居然是過的,悲劇*/#include <iostream>#include <algorithm>using namespace std;int main(){int n , m;int val[105][1
Time of Update: 2018-12-04
{ObjFolder('prosamplein')}">Kiki & Little Kiki 2 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other)Total Submission(s) : 9 Accepted Submission(s) : 9Font: {ProFont('Times New Roman')}">Times New Roman |
Time of Update: 2018-12-04
這題用的也是bfs,就是儲存路徑這裡麻煩。。#include<iostream>#include<queue>using namespace std;#define max 99999999int dir[4][2]={{0,-1},{0,1},{-1,0},{1,0}};int flag;int sum,n,m;char map[105][105];struct Node{ int x,y; int step;};struct Infor{ int
Time of Update: 2018-12-04
/*(很神奇的題目)一開始我以為是母函數的問題,的確用母函數可以解,可是鐵定逾時,後來baidu後發現如下解法#include<iostream>#include<cstdio>using namespace std;int a[32768];int main(){ int n,i; a[0]=0; for( i = 1 ; i < 32768 ; i++ ) {