吳永輝教授2023年講課7 9題解

2021-10-25 21:59:28 字數 4176 閱讀 2368

1.我寫的是a-d和v

2.張同學寫的e-h,代翻為部落格

3.曲同學寫的 i-l@arctique~

4.@,m張同學寫的(m-p)

5.郭同學寫的q-t和u,代翻為部落格

大家都很認真吶吶吶~

a題直達

**:

#pragma gcc optimize(2)

#include

#define debug(x) cout<

namespace std;

typedef

long

long ll;

const

int max_n=

1e5+5;

const

int inf=

0x3f3f3f3f

;int a[max_n]

;int sum;

int cnt;

intmain()

sort

(a,a+l)

;for

(int j=

0;j} cout<

sum=

0;i=

1;l=1;

}return0;

}

b題直達

題意:九鍵號碼盤,輸入字母或數字,統計相同的號碼出現的次數,出現一次的忽略不計

題解:我的思路大概就是把乙個字串變成乙個7位數!!

sort一下,弄個迴圈,記錄一下次數再輸出就可

思路有點笨

#pragma gcc optimize(2)

#include

#define debug(x) cout<

namespace std;

typedef

long

long ll;

const

int n=

1e5+5;

const

int inf=

0x3f3f3f3f

;int num[n]

;int sum;

int cnt;

char s[n]

[101];

intmain()

}}sort

(num,num+n)

;// for(int i=0;i

// debug(num[i]);

// }

int flag=0;

int j;

for(

int i=

0;i(cnt>1)

}if(flag==0)

printf

("no duplicates.\n");

return0;

}

執行結果:

12

4873279

its-easy

888-4567

3-10-10-10

888-glop

tut-glop

967-11-11

310-gino

f101010

888-1200

-4-8-7-3-2-7-9-

487-3279

310-1010 2

487-3279 4

888-4567 3

c題直達

題解:全排列即可,有用到next_permutation函式

**:

#include

using

namespace std;

intmain()

}return0;

}

d題直達

題目大意:

就是說魔術師要穿牆表演,一次表演最多能穿k個牆。一共有n行牆在map上放置,下面n行是牆的第一塊和最後一塊磚的左上角的座標。然後讓我們判斷最少去掉幾堵牆能使魔術師從上往下任意挑選一列都能穿牆成功。

思路:從當前超過k堵牆的列開始,到牆的末尾,最長的牆對整個牆的布局的影響最大。所以就拆這個所謂最長的牆。

#include

#define debug(x) cout<

namespace std;

typedef

long

long ll;

const

int n=

1e3+5;

const

int inf=

0x3f3f3f3f

;const

double pi=

acos(-

1);int sum;

int ans;

int cnt;

struct node a[

201]

;int c[

201]

;int

main()

memset

(c,false

,sizeof

(c))

;//這個c陣列是記錄每一列有多少個牆

for(

int i=

0;i)for

(int i=

0;i<=max_;i++)}

for(

int j=a[tempid]

.beginx;j<=a[tempid]

.endx;j++

)//我們拆掉第tempid行的牆,然後影響的列的牆數也要相應改變

a[tempid]

.endx=-1

;//被拆的那行牆要pass掉

ans++

;//到這裡已經拆掉了一堵牆,然後結果加1}}

printf

("%d\n"

,ans);}

return0;

}

v題直達

大概題意:

找出公共單詞數

思路:dp加最長公共子串行

這個題可能後台資料有問題,一直沒過去,但是**應該沒問題,有問題的話我再改改哈

#include

using

namespace std;

const

int maxn=

1e5+5;

int dp[

1010][

1010];

string s1,s2;

struct node t1,t2;

void

devide

(string s,node &t)

for(

int i=

0; i

)int cnt=0;

for(

int i=

1; i<=t.num; i++)if

(!t.word[i]

.empty()

) t.word[

++cnt]

=t.word[i]

; t.num=cnt;

}int

main()

devide

(s1,t1)

;devide

(s2,t2)

;for

(int i=

0; i<=t1.num; i++

) dp[i][0

]=0;

for(

int j=

0; j<=t2.num; j++

) dp[0]

[j]=0;

for(

int i=

1; i<=t1.num; i++

)for

(int j=

1; j<=t2.num; j++)if

(t1.word[i]

==t2.word[j]

) dp[i]

[j]=dp[i-1]

[j-1]+

1;else

dp[i]

[j]=

max(dp[i-1]

[j],dp[i]

[j-1])

;printf

("length of longest match: %d\n"

,dp[t1.num]

[t2.num]);

}return0;

}

漢語程式設計,純粹胡扯 反駁吳克忠教授

國內頂尖計算機專家吳克忠談漢語程式設計 先引用其中的一段話吧 吳克忠教授首先從四個方面對漢語程式設計技術進行了分析。一 漢語程式設計基礎紮實。現在的軟體都是通過 作業系統 資料庫 網路等做起來的,不能在硬體上做。而漢語程式語言是在基礎上形成的,從微控制器做起,最初只是乙個單板機,這樣形成的漢語程式設...

哈佛教授 美國學生畢業前必做20件事

一 走出圖書館。大學是四年人生經驗,不是高學分。在美國的大學,課外活動常常和功課一樣重要。二 在你的宿舍裡開始做生意。雅虎 谷歌都會爭先恐後地買你弄出來的 谷歌本身就可以歸於大學宿舍裡誕生的買賣。三 別債務纏身。在普通的州立大學和名牌但昂貴的私立大學之間,最好選擇前者。從個人前途上看,無債一身輕比花...

產品釋放自由 金柚網天吳系統V2 0上線完成發布會

今日,國內saas企業級服務領域及人力資源服務平台金柚網在京召開天吳系統v2.0產品發布會。其核心管理團隊 業務團隊 研發團隊 人力資源服務領域專家 企業級服務商家 各大 共同出席了本次發布會。在人力資源領域,金柚網目前擁有全國最大的共享自營服務體系,也擁有全國規模最大的屬地化直銷團隊。郭偉說,和其...