[hoj 2678]Stars[二維樹狀數組]

二維樹狀數組的含義:sum[i][j]表示從lowbit(i)<=x<=i,lowbit(j)<=y<=j之間的元素之和.題意:類似poj那道Stars,擴充到了三維.#include <iostream>#include <cstring>#include <algorithm>using namespace std;const int MAXN = 15005;const int N = 1005;typedef struct

TSP狀態轉移[狀態壓縮DP]

dp[1][0] = 0;for (i=3; i<(1<<n); i+=2) //枚舉狀態.最右為1號城市,遍曆奇數就可以枚舉所有狀態了 for (j=1; j<n; j++) //枚舉終點.掃一遍if (i&(1<<j)) //判斷是否合法.狀態i是否可以以j為終點{ temp = i – (1<<j);//表示沒到j點前的狀態 if

[HDU 4576]Robot[機率DP]

題意:環形cell, robot初始在1號,順逆時針走機率各半.每次走w,問x次後停在l和r之間的機率.思路:正著推,方程很顯然. 需要注意空間最佳化為2行, 時間上減少mod的次數.#include <cstdio>#include <cstring>using namespace std;const int MAXM = 1e6+5;const int MAXN = 205;double dp[2][MAXN];int m,n,l,r,w;inline int

HDU 1114 Piggy-Bank

注意這裡的E是代表存錢罐為空白時的品質,F代表存錢罐存滿時候的重量。Piggy-BankTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 7588    Accepted Submission(s): 3796Problem DescriptionBefore ACM can do anything, a budget must be

[poj 1182]食物鏈[並查集][圖解+注釋]

代碼來源:http://blog.csdn.net/c0de4fun/article/details/7318642題意:動物王國中有三類動物A,B,C,這三類動物的食物鏈構成了有趣的環形。A吃B, B吃C,C吃A。現有N個動物,以1-N編號。每個動物都是A,B,C中的一種,但是我們並不知道它到底是哪一種。有人用兩種說法對這N個動物所構成的食物鏈關係進行描述:第一種說法是"1 X Y",表示X和Y是同類。第二種說法是"2 X

HDU 2602 OJ Bone Collector

01背包模板題。就是求一定空間下的最大價值問題、Bone CollectorTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 22041    Accepted Submission(s): 8912Problem DescriptionMany years ago , in Teddy’s hometown there was a

資料結構實驗之鏈表七:單鏈表中重複元素的刪除

#include<stdio.h>#include<stdlib.h>struct a{ int data; struct a*next;} ;void list(struct a*p){while(p->next->next!=NULL){printf("%d ",p->next->data);p=p->next;}printf("%dn",p->next->data);}struct a*sr( int n){

資料結構上機測試4.1:二叉樹的遍曆與應用1

這個問題的大體解題思路是通過對先序排序的第一個數是每一層二叉樹的根的特點,結合中序排列的特點,將先序排序中第一個把中序中的字串分成兩部分,左邊是左叉樹,右邊是右叉樹,然後遞迴調用它自己,一直到先序排序中每個子區間的長度為零為止,再結合先序排序中的第一個是後序排序中最後一個的特點將遞迴調用得到的先序排序中每個區間的第一個數放在後序排序字串中的最後一個,在輸出結果就行了。下面是參考劉汝佳《演算法競賽 入門經典》寫的代碼,加了一些自己的注釋。#include

我對快速排序的理解。

#include<stdio.h>void quick_sort(int s[],int l,int r){ if(l<r)//判斷條件為左邊應該小於右邊再進行排序; { int i=l,j=r,x=s[l]; while(i<j)//i<j的結束條件是i==j,這樣可以確保i的左邊都比s[i]小;{while(i<j && s[j]>=x)//找出左邊比X小的數,如果小於X就停止j--;if(i&

弱校ACM奮鬥史

     

POJ3032 Card Trick

   這道題的題意大體是說一個魔術師第一次拿一張牌放到下面然後將最上面的那張,拿出是黑桃一,第二次從上面拿兩張翻到下面,然後拿出黑桃二,以此類推第N次將上面的N張牌放到下面,拿出黑桃N。然後找到應該怎麼排列這些牌才能達到這些效果。  直接類比是不可以的,因為後面的會影響前面的,但是如果從後向前類比的話,就不受影響了。DescriptionThe magician shuffles a small pack of cards, holds it face down and performs

HDU 1702 ACboy needs your help again!

  這道題還是對棧和隊列的一個類比,FILO表示先進後出,這是棧;FIFO先進先出這是隊列,我們自要做到類比他的過程就行。Problem DescriptionACboy was kidnapped!! he miss his mother very much and is very scare now.You can't image how dark the room he was put into is, so poor :(.As a smart ACMer, you want to

[poj 3481]Double Queue[set || map][STL]

題意:三種操作:1 k p      向隊伍中插入編號為k的優先順序為p的客戶2           選擇優先順序最高的客戶出隊3           選擇優先順序最低的客戶出隊set:可以利用set的有序性和首尾出隊功能.//228K297MS#include <cstdio>#include <set>using namespace std;struct node{ int k,p; node(){}; node(int a, int b):k(a)

hdu 1176 免費餡餅(類似於hdu 2084 數塔那道題目 )

題目連結: http://acm.hdu.edu.cn/showproblem.php?pid=1176免費餡餅Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14396    Accepted Submission(s): 4763Problem

[poj 2524]Ubiquitous Religions[並查集]

題意:有n個學生,m對樣本.每對樣本x,y表示編號為x,y(從1開始)的學生有相同的宗教信仰.問n個學生共涉及多少個不同的宗教.裸並查集...#include <cstdio>#include <cstring>using namespace std;const int MAXN = 50005;int set[MAXN];//father or -numvoid Init(void){ memset(set,-1,sizeof(set));}int

K次方(即求n^k的前三位與後三位)

題目來源,多校聯合賽: http://acm.hdu.edu.cn/diy/contest_showproblem.php?cid=16820&pid=1002(重開,密碼:52acm8)注意:貌似過了這段時間不能提交了的說。。。。。。K次方Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other)Total Submission(s) : 31   Accepted

[hoj 1225]Supermarket代碼閱讀記錄

代碼來源:http://hi.baidu.com/chingfantsou/item/fb84b21438ac14e55f53b194#include <cstdio>#include <algorithm>using namespace std;int n;int p[10001],d[10001];int md;int ans;int h[10001];struct pro{ int p,d;}pd[10001];bool cmp(pro a,pro b)

搞ACM的你傷不起載,不過這個神作實在是太經典了)

原文複製地址(注意此處也非原創):http://page.renren.com/601332152/note/862709920很搞笑啊。O(∩_∩)O哈哈~但是還是喜歡acm。你們懂的~~~~~~RoBa原創,轉載請註明出處勞資六年前開始搞ACM啊!!!!!!!!!! 從此踏上了尼瑪不歸路啊!!!!!!!!!!!! 誰特麼跟勞資講演算法是程式設計的核心啊!!!!!! 尼瑪除了面試題就沒見過用演算法的地方啊!!!!!! 誰再跟勞資講演算法之美演算法的力量,勞資一本演算法導論拍死你啊!!!!!!!

[poj 2352]Stars代碼閱讀記錄[樹狀數組]

題意:在一個座標系內,給若干個點,每個點給定x、y座標,定義點p的level為橫縱座標均不超過點p的點的個數,輸出每個level包含的點的數量。思路:樹狀數組加速求和;首先分析清楚如何求每個星星的level,以何順序為正確.其次就是樹狀數組的模板:lowbit(i);add(i,v);GetSum(i);//348K125MS#include <cstdio>#include <cstring>using namespace std;#define N

[HDU 4336]Card Collection[狀態壓縮DP][機率DP][容斥原理]

題意:小吃中有N種卡片,每種卡片 i 出現的機率為 pi ,一袋小吃有可能沒有卡片,但最多有一張.問集齊所有卡片需要購買小吃的袋數期望.思路:1.用狀壓dp,dp[ s ]表示在s狀態時,集齊所需要的袋數期望.s = 11111表示N = 5時集齊的狀態,此時dp[ s ] = 0;注意求期望的題,對於dp的定義一般都是從終態轉移到初態,也就是反著求.因為"期望"是確定事件的結果 * 該事件發生的機率 =

總頁數: 61357 1 .... 19226 19227 19228 19229 19230 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.