//只需按絕對值排序就行了,用一個標誌來判斷,當符號改變時+1 #include<cstdio>#include<cstdlib>#include<algorithm>using namespace std;int a[500005];int n,m;int cmp(int a,int b){ return abs(a)<abs(b);}int main(){ scanf("%d",&n); while(n--){
先說宏和函數的區別:1. 宏做的是簡單的字串替換(注意是字串的替換,不是其他型別參數的替換),而函數的參數的傳遞,參數是有資料類型的,可以是各種各樣的類型.2. 宏的參數替換是不經計算而直接處理的,而函數調用是將實參的值傳遞給形參,既然說是值,自然是計算得來的.3. 宏在編譯之前進行,即先用宏體替換宏名,然後再編譯的,而函數顯然是編譯之後,在執行時,才調用的.因此,宏佔用的是編譯的時間,而函數佔用的是執行時的時間.4.
這道題目是一道類比題目,但是我想的過程中遇到了很多問題,感覺腦袋很亂的感覺。最後參考了別人的代碼:http://www.xue5.com/Developer/Software/684397.html自己照著他的思想重寫了一遍,但是比他寫的要長。思想是:每次走一步,這需要用d數組來記錄到起始點的距離,如果有兩滴水同時到達的情況,則可以根據距離判斷,直接將該格子的值++。//79086222013-03-28 11:07:35Accepted452715MS224K2612
最近Functional Programing似乎很熱,7月份的《程式員雜誌》也兩天篇文章是專門講述FP的。 Funtional Programming(函式程編)是一種寫傳統的Imperative(命令式編程)有著不一樣的思考方式。通過對FP的學習可以更好是從[怎麼樣解決問題這個角度]去分析問題。就我最近的瞭解,可以給FP打下以下幾個tag: 1,FP的特徵,以及功能是體現是通過High-Order Function以及Lazy
阿聯酋.杜拜--芝加哥海灘賓館 一個美麗的地方!!全世界唯一一座七星級的酒店! 建築設計:英國阿特金斯(W.S.Atkins)建築規劃室 位於阿拉伯聯合酋長國首都杜拜的芝加哥海灘賓館1999年竣工,賓館位於杜拜距海灘300米的某人工島上,高340米,是目前中東地區最高的建築物。賓館採用雙層膜結構建築形式,造型輕盈、飄逸,具有很強的膜結構特點及現代風格。賓館內部極盡奢華之能事。 又叫“阿拉伯之星”,世界上唯一一個七星級賓館,因為豪華程度遠遠超過五星標準。
今天無意中在CSDN的論壇上看到一個文章,文章的主題是:《剛看完C++的文法部分,下一步怎麼學?》。這個主題在論壇上是時常看到的,可見受此困惑的人還是頗多的。常見回複一般不外乎兩類:一類是,繼續深入學習。另一類是:動手編程,實踐。其實這兩類回複都應該是正確的,但似乎又不是提問者真正想要的,要不然這個問題也不會一而再,再而三地被提出了。
在開始做acm的時候就想寫部落格,記錄每天寫的acm題目。但一直很忙,抽不出時間整理和編寫。這段時間,零點的會長工作也差不多結束了,也都沒有接受各種橄欖枝去做項目,生活的唯一一件事就是ACM。所以,想花點時間整理些思路,把思路轉化為文字,也讓別人看看,讓別人指出我的錯誤與不足。我一直認為,從大學畢業,帶走一些知識和能力很重要的,但最重要的是大學你養成了一些一輩子都受用的習慣,所以我一直要求我自己決定了做一件事就要堅持做下去,這樣大學畢業我能夠帶走幾個好習慣。部落格暫時不公開,等我想好我的生活真正
#include<iostream>using namespace std;struct Node{Node* left;Node* right;int data;};int isBalanceTree(Node* root,bool& flag){if(root==NULL) return 0;int leftLen=isBalanceTree(root->left,flag);int
//為什麼要按左邊界進行排序,貪心 #include<cstdio>#include<cstdlib>#include<algorithm>#include<cmath>using namespace std;struct Node{ double l,r;};Node water[10005];int n,l,w;int cmp(Node a,Node b){ return a.l<b.l;}int main(){
#include<stdio.h>#include<stdlib.h>#include<iostream>using namespace std;struct Node{int data;Node* next;};void exchange(Node* &p1,Node* &p2){Node* tmp=p1;p1=p2;p2=tmp;}void transform(Node* head,Node* &head1,Node*
題目:Numbers are randomly generated and stored into an (expanding) array. How would you keep track of the
#include<iostream>using namespace std;const int m=4;const int n=4;int mat[m][n];bool vis[m][n];int dir=1;void init(){memset(vis,0,sizeof(vis));int num=1;for(int i=0;i<m;i++)for(int j=0;j<n;j++)mat[i][j]=num++;}int main(){init();int i=0,j=
這道題目真是太麻煩了,設定了好多變數。對了,還參考了discuss中的空格的問題。//11333524c00h00g3026Accepted680K47MSG++2894B2013-03-10 14:35:03#include<stdio.h>#include<stdlib.h>#include<queue>#include<string.h>using namespace std;#define INF 0x7fffffff//字元矩陣
這是在編程珠璣的習題上看到的,P214第四題節點的定義如下:struct node{int val;node *next;node(int v,node *p){val=v; next=p;}};另外初始化的過程中,初始化頭結點,head=new node(maxval,0)其中maxval表示一個最大值通常的插入函數都會這樣來寫:void insert(int t){node* before=NULL;node* p=head;while(p->val<t){before=p;p=
題目連結:pku2242 題意:已知三角形的頂點座標,求三角形的外接圓的周長。 方法:已知三角形三邊a,b,c,可以用海倫公式求其面積。S=sqrt(p*(p-a)*(p-b)*(p-c)),其中p=(a+b+c)/2. 知道a,b,c及外接圓半徑R,則三角形的面積為 S=a*b*c/(4*R)。本題由此公式即可算出外接圓半徑。 代碼一: #include <iostream>#include <cmath>using namespace std;const
題目連結: tzc3056方法:計算幾何 注意:本題在輸出結果的時候要將資料強制轉換成整型,不能用%.0lf輸出,否則會WA。代碼:#include <iostream>#include <cmath>using namespace std;const double eps=1e-10;struct point{ double x,y; };struct line{ double a,b,c; };point point_about_line(point
C語言測試是招聘嵌入式系統程式員過程中必須而且有效方法。這些年,我既參加也組織了許多這種測試,在這過程中我意識到這些測試能為面試者和被面試者提供許多有用資訊,此外,撇開面試的壓力不談,這種測試也是相當有趣的。 從被面試者的角度來講,你能瞭解許多關於出題者或監考者的情況。這個測試只是出題者為顯示其對ANSI標準細節的知識而不是技術技巧而設計嗎?這是個愚蠢的問題嗎?如要你答出某個字元的ASCII值。這些問題著重考察你的系統調用和記憶體配置策略方面的能力嗎?這標誌著出題者也許花時間在微機上而不是在嵌
GIS概述:1 什麼是GIS?2 一個GIS的組成3 GIS如何工作4 GIS的任務5 GIS相關技術6 GIS可以做什麼7 GPS資料8 生活中的GIS 1 什麼是GIS?地理資訊系統 (GIS, Geographic Information System) 是一種基於電腦的工具,它可以對在地球上存在的東西和發生的事件進行成圖和分析。 GIS 技術把地圖這種獨特的視覺化效果和地理分析功能與一般的資料庫操作(例如查詢和統計分析等)整合在一起。這種能力使
一、多態性指相同對象收到不同訊息或不同對象收到相同訊息時產生不同的實現動作。C++支援兩種多態性:編譯時間多態性,運行時多態性。1.編譯時間多態性:通過重載函數實現;2.運行時多態性:通過虛函數實現。二、虛函數虛函數是在基類中被聲明為virtual,並在衍生類別中重新定義的成員函數。可實現成員函數的動態重載。三、純虛函數純虛函數是在基類中聲明的虛函數,它在基類中沒有定義,但要求任何衍生類別都要定義自己的實現方法。在基類中實現純虛函數的方法是在函數原型後加“=0”。如:class Parent{
========================== 功能:選擇排序(由小到大) 返回:指向鏈表表頭的指標==========================*//* 選擇排序的基本思想就是反覆從還未排好序的那些節點中, 選出索引值(就是用它排序的欄位,我們取學號num為索引值)最小的節點, 依次重新組合成一個鏈表。 我認為寫鏈表這類程式,關鍵是理解: head儲存的是第一個節點的地址,head->next儲存的是第二個節點的地址; 任意一個節點p的地址,只能通過它前一個節點的next來求