演算法分析4

2021-08-21 07:13:34 字數 1420 閱讀 3400

1.題目描述

對於表示式n2

+n+41,當n

在(x,y

)範圍內取整數值時(包括

x,y)

(-39<=x,y<=50)

,判定該表示式的值是否都為素數。

輸入

輸入資料有多組,每組佔一行,由兩個整數x,

y組成,當

x=0,y=0

時,表示輸入結束,該行不做處理。

輸出

對於每個給定範圍內的取值,如果表示式的值都為素數,則輸出

"ok",

否則請輸出

「sorry」,

每組輸出佔一行。

樣例輸入

0 1 0 0

樣例輸出

ok

#include

int main(void)

}if(k)

sum++;

}if(sum==y-x+1)

printf("ok\n");

else

printf("sorry\n");

}return0;}2.

題目描述

已知元素從小到大排列的兩個陣列x和

y,請寫出乙個程式算出兩個陣列彼此之間差的絕對值中最小的乙個,這叫做陣列的距離。

輸入

第一行為兩個整數

m, n(1≤m, n≤1000)

,分別代表陣列

f, g

的長度。

第二行有

m個元素,為陣列f。

第三行有

n個元素,為陣列g。

輸出

陣列的最短距離

樣例輸入

5 5 1 2 3 4 5

6 7 8 9 10

樣例輸出

1

提示

你能想出

o(n+m)

的演算法嗎

?^_^加油!

**:#include

using namespace std;

int main()

for(int i=0;i

if(f[0]>g[0])

//初始化min

else

min=g[0]-f[0];

for(int i=0;i

else

k=g[j]-f[i];

if(k}}

cout<

}

演算法手記(4)演算法分析

我的程式會執行多長時間?為什麼我的程式耗盡了所有記憶體?在我們使用計算機解決困難問題或是處理大量資料時,不可避免地會產生這些疑問。為這些基礎問題給出答案有時其實非常簡單,這個過程是科學方法,這就是我們今天討論的內容。科學方法概述 科學家用於觀察世界的方法對於研究電腦程式一樣有效 1.觀察真實世界特點...

演算法手記(4)演算法分析

我的程式會執行多長時間?為什麼我的程式耗盡了所有記憶體?在我們使用計算機解決困難問題或是處理大量資料時,不可避免地會產生這些疑問。為這些基礎問題給出答案有時其實非常簡單,這個過程是科學方法,這就是我們今天討論的內容。科學方法概述 科學家用於觀察世界的方法對於研究電腦程式一樣有效 1.觀察真實世界特點...

《演算法分析》作業4

對n個不同的數構成的陣列 a 1.n 進行排序,其中 n 2 k,要求用歸併排序進行排序。歸併排序 當我們要對陣列進行排序的時候,我們首先把這個陣列分成一半,然後就是對左邊的陣列和右邊的陣列分別進行排序,之後將他們合併起來,然而對左右兩邊陣列進行排序的時候要用到分治的思想,對左右兩個陣列進行歸併排序...