1. 程式人生 > >1.山地訓練(4分)

1.山地訓練(4分)

1 山地訓練(4分)

題目內容:

為了能在下一次跑步比賽中有好的發揮,小白在一條山路上開始了她的跑步訓練。她希望能在每次訓練中跑得儘可能遠,不過她也知道農場中的一條規定:女孩子獨自進山的時間不得超過M秒(1 <= M <= 10,000,000)。假設整條山路劃分成T個長度相同的路段(1 <= T <= 100,000),並且小白用si表示第i個路段的路況,用ufd3個字母分別表示第i個路段是上坡、平地、下坡。小白跑完一段上坡路的耗時是U秒(1 <= U <= 100),跑完一段平地的耗時是F秒(1 <= F <= 100),跑完一段下坡路的耗時是D秒(1 <= D <= 100

)。注意,沿山路原路返回時,原本是上坡的路段變成了下坡路段,原本是下坡的路段變成了上坡路段。小白想知道,在能按時返回農場的前提下,她最多能在這條山路上跑多少個路段。請你程式設計幫助她計算。

函式原型:long Fun(long M, long T, long U, long F, long D, char str[]);

函式功能:計算在限時M秒內T個路段的情況下,最多往返可跑的路段數。

引數:M,T,U,F,D分別代表限時、路段數,以及上坡、平地、下坡的耗時

陣列str儲存整條山路的路段狀況

返回值:最多可跑的路段數

程式執行結果示例1:

Input M,T,U,F,D:13 5 3 2 1↙

Input conditions of road:ufudf↙

num=4

程式執行結果示例2:

Input M,T,U,F,D:4000 8 18 10 5↙

Input conditions of road:fuffdfud↙

num=8

進山時間等資訊的輸入提示: "Input M,T,U,F,D:"

路況輸入提示資訊: "Input conditions of road:"

進山時間等資料的輸入格式: "%ld%ld%ld%ld%ld"

路況等資料的輸入格式: "%s"

輸出格式: "num=%ld\n"

為避免出現格式錯誤,請直接拷貝貼上題目中給的格式字串和提示資訊到你的程式中。

時間限制:500ms記憶體限制:32000kb
#include<stdio.h>

#define N 100000


main()
{
	int i=0,count=0;
	long M, T, U, F, D; char str[N];
	printf("Input M,T,U,F,D:");
	scanf("%ld%ld%ld%ld%ld",&M,&T,&U,&F,&D);
	printf("Input conditions of road:");
	scanf("%s",str);
	long s = M;

	do{
		/*switch (str[i]) {

		case'u':s -= (U + D); 
			break; 
		case'f':s -= (F + F);
			break; 
		case'd':s -= (U + D); 
			break; 
		}*/
		if (str[i] == 'u')
		{
			s -= (U + D);
		}
		else if (str[i] == 'f')
		{
			s -= (F + F);
		}
		else if (str[i] == 'd')
		{
			s -= (U + D);
		}
		count++;
		i++;
		if (count == T)
			break;

	} while (s > 0);
	printf("num=%ld\n", count);
}

相關推薦

1.山地訓練4

1 山地訓練(4分) 題目內容: 為了能在下一次跑步比賽中有好的發揮,小白在一條山路上開始了她的跑步訓練。她希望能在每次訓練中跑得儘可能遠,不過她也知道農場中的一條規定:女孩子獨自進山的

1001 害死人不償命的(3n+1)猜想 (15)15

自然 all 輸出 猜想 stdio.h 大會 light 證明 n) /* 1001 害死人不償命的(3n+1)猜想 (15)(15 分) 卡拉茲(Callatz)猜想: 對任何一個自然數n,如果它是偶數,那麽把它砍掉一半;如果它是奇數,那麽把(3n+1)砍掉一半。這

一道老坑爹的題第三章棧作業題2-棧及其應用-計算機17級 7-1 表示式轉換 25

 7-1 表示式轉換 (25 分) 算術表示式有字首表示法、中綴表示法和字尾表示法等形式。日常使用的算術表示式是採用中綴表示法,即二元運算子位於兩個運算數中間。請設計程式將中綴表示式轉換為字尾表示式。 輸入格式: 輸入在一行中給出不含空格的中綴表示式,可

7-1 關鍵活動 30

假定一個工程專案由一組子任務構成,子任務之間有的可以並行執行,有的必須在完成了其它一些子任務後才能執行。“任務排程”包括一組子任務、以及每個子任務可以執行所依賴的子任務集。 比如完成一個專業的所有課程學習和畢業設計可以看成一個本科生要完成的一項工程,各門課程可以看成是子任務。有些課程可以同時

6-1 刪除字元 20 c語言解答附關鍵注意點

6-1 刪除字元 (20 分) 本題要求實現一個刪除字串中的指定字元的簡單函式。 函式介面定義: void delchar( char *str, char c ); 其中char *str是傳入的字串,c是待刪除的字元。函式delchar的功能是將字串str中出現的所有c字元刪

CSP201403-1 相反數100

試題編號: 201403-1 試題名稱: 相反數 時間限制: 1.0s 記憶體限制: 256.0MB 問題描述: 問題描述         有 N 個非零且各不相同的整數。請你編一個程式求出它們中有多少對相反數(a 和 -a 為一

7-1 計算指數 5

  真的沒騙你,這道才是簡單題 —— 對任意給定的不超過10的正整數n,要求你輸出2​n​​。不難吧? 輸入格式: 輸入在一行中給出一個不超過10的正整數n。 輸出格式: 在一行中按照格式 2^n = 計算結果 輸出

ccf 201509-1 數列分段100

問題描述   給定一個整數數列,數列中連續相同的最長整數序列算成一段,問數列中共有多少段? 輸入格式   輸入的第一行包含一個整數n,表示數列中整數的個數。   第二行包含n個整數a1, a2, …, an,表示給定的數列,相鄰的整數之間用一個空格分隔。

ccf 201503-1 影象旋轉100

問題描述   旋轉是影象處理的基本操作,在這個問題中,你需要將一個影象逆時針旋轉90度。   計算機中的影象表示可以用一個矩陣來表示,為了旋轉一個影象,只需要將對應的矩陣旋轉即可。 輸入格式   輸入的第一行包含兩個整數n, m,分別表示影象矩陣的行數和

CCF認證 201503-1 影象旋轉100 201503-2 數字排序100

CCF認證2015-03-1 影象旋轉   問題描述   旋轉是影象處理的基本操作,在這個問題中,你需要將一個影象逆時針旋轉90度。   計算機中的影象表示可以用一個矩陣來表示,為了旋轉一個影象,只需要將對應的矩陣旋轉即可。 輸入格式   輸入的第一行包含兩個整數n

ccf認證--201809-1 賣菜100

CCF認證-201809-1 賣菜 思路:很簡單。 試題編號: 201809-1   試題名稱: 賣菜 時間限制: 1.0s 記憶體限制:

7-1 字串替換 15

本題要求編寫程式,將給定字串中的大寫英文字母按以下對應規則替換: 原字母 對應字母 A Z B Y C X D W … … X C Y B Z A 輸入格式: 輸入在一行中給出一個不超

CCF201709-1 打醬油100

問題描述   小明帶著N元錢去買醬油。醬油10塊錢一瓶,商家進行促銷,每買3瓶送1瓶,或者每買5瓶送2瓶。請問小明最多可以得到多少瓶醬油。 輸入格式   輸入的第一行包含一個整數N,表示小明可用於買醬

PTA 7-1 Huffman Codes 30

7-1 Huffman Codes (30 分) In 1953, David A. Huffman published his paper "A Method for the Construction of Minimum-Redundancy Codes", and h

7-1 Huffman Codes 30

In 1953, David A. Huffman published his paper "A Method for the Construction of Minimum-Redundancy Codes", and hence printed his name in t

6-1 Topological Sort 25

6-1 Topological Sort (25 分) 編寫程式以在有向圖中找到拓撲順序。 功能格式: bool TopSort( LGraph Graph, Vertex TopOrder[] ); 其中LGrap

HBU-DS2018SY-3-1 悄悄關注 25

題目描述: 新浪微博上有個“悄悄關注”,一個使用者悄悄關注的人,不出現在這個使用者的關注列表上,但系統會推送其悄悄關注的人發表的微博給該使用者。現在我們來做一回網路偵探,根據某人的關注列表和其對其他使用者的點贊情況,扒出有可能被其悄悄關注的人。 輸入格式: 輸入首先在第一行給出某使用者的

PAT 乙級 1005 繼續(3n+1)猜想 (25)25

1005 繼續(3n+1)猜想 (25)(25 分) 卡拉茲(Callatz)猜想已經在1001中給出了描述。在這個題目裡,情況稍微有些複雜。 當我們驗證卡拉茲猜想的時候,為了避免重複計算,可以記錄下遞推過程中遇到的每一個數。例如對n=3進行驗證的時候,我們需要計算3、5

1005 繼續(3n+1)猜想 (25)25

卡拉茲(Callatz)猜想已經在1001中給出了描述。在這個題目裡,情況稍微有些複雜。當我們驗證卡拉茲猜想的時候,為了避免重複計算,可以記錄下遞推過程中遇到的每一個數。例如對n=3進行驗證的時候,我們需要計算3、5、8、4、2、1,則當我們對n=5、8、4、2進行驗證的時候

7-1 悄悄關注 25 ---排序Java容器實現

7-1 悄悄關注 (25 分) 新浪微博上有個“悄悄關注”,一個使用者悄悄關注的人,不出現在這個使用者的關注列表上,但系統會推送其悄悄關注的人發表的微博給該使用者。現在我們來做一回網路偵探,根據某人的關注列表和其對其他使用者的點贊情況,扒出有可能被其悄悄關注的人。 輸