王道機試指南 P1

2021-10-04 11:30:13 字數 2466 閱讀 4782

p1 結構體陣列排序

核心在於1.使用結構體,2,使用sort和對應的cmp 3.字串使用strcmp比大小

//先建立乙個結構體用來存對應的數值

struct estu[

100]

;bool cmp

(e a,e b)

intmain()

return0;

}p1;這道題的關鍵是在於,因為給定的值是乙個範圍的,所以可以直接用乙個陣列來存對應的資料,即陣列的下標就是對應的值,陣列的值就是對應的次數。

#include

#include

#include

#include

#include

#include

using namespace std;

//建立乙個用來成績次數的陣列 成績是0到100 所以有101個數字

int sc[

101]

;int

main()

scanf

("%d"

,&score2)

;printf

("%d\n"

,sc[score2]);

}}

排版題

#include

#include

#include

#include

#include

#include

using namespace std;

//也就是給定乙個n,他的長和高都是n

//所以我的想法是,建立乙個n*n的二維陣列,然後第一行也就是i等於0的時候 *有i+n個 所以空格是n-(i+n)個

char str[

100]

[100];

intmain()

for(i=

0;i)for

(j=0

;j<

2*n;j++

)}

查詢的問題

#include

#include

#include

#include

#include

#include

using namespace std;

//找數字

intmain()

}if(!flag)

printf

("-1\n");

}}

結構體陣列的查詢

#include

#include

#include

#include

#include

#include

using namespace std;

//建立乙個學生結構體陣列

struct mstu[30]

;int

main()

}if(!flag)

printf

("no answer\n");

}}

貪心演算法:

#include

#include

#include

#include

#include

#include

using namespace std;

//貪心 一般都是伴隨乙個結構體陣列

struct mmou[

100]

;//而貪心的話,就是用過價效比來判斷的,所以需要寫乙個比較函式來把價效比最大的找出來

bool cmp

(m a,m b)

intmain()

//再進行排序

sort

(mou,mou+n,cmp)

;//開始判斷

for(i=

0;i(m

.f&&m>mou[i]

.rest)

}printf

("%.3f\n"

,sum);}

}

王道機試指南NO 4Day Of Week

時間限制 1s 記憶體限制 32mb輸入乙個日期,要求輸出該日期為星期幾 9 october 2001 14 october 2001 tuesday sunday 1 日期類問題,先預處理出每個日期與原點日期 0年1月1日 之間的天數間隔,存入buf三維陣列。2 看到題目考慮兩個問題 今天星期幾?...

菜鳥的機試準備 王道機試指南 演算法筆記

字串雜湊 100000582 b 100000582 c 100000582 d 今天第幾天?清華 include include using namespace std int month tab 2 13 bool is leapyear int year intmain else 上邊的if ...

王道機試指南NO 5Sort Hash應用

時間限制 1s 記憶體限制 128mb給n個整數,請按從大到小的順序輸出其中前m大的數。每組測試資料有兩行,第一行有兩個數n,m 0 n,m 1000000 第二行包含n個各不相同,且都處於區間 500000,500000 的整數。對每組測試資料按從大到小的順序輸出前m大的數。5 33 35 92 ...