日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

NOIP2010-普及组复赛模拟试题-第一题-手机

發(fā)布時(shí)間:2025/6/17 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NOIP2010-普及组复赛模拟试题-第一题-手机 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

題目背景?Background

現(xiàn)在手機(jī)使用越來(lái)越廣泛了 ?題目描述?Description 一般的手機(jī)的鍵盤(pán)是這樣的:
要按出英文字母就必須要按數(shù)字鍵多下。例如要按出 x 就得按 9 兩下,第一下會(huì)出 w,
而第二下會(huì)把 w 變成 x。0 鍵按一下會(huì)出一個(gè)空格。
你的任務(wù)是讀取若干句只包含英文小寫(xiě)字母和空格的句子, 求出要在手機(jī)上打出這個(gè)句
子至少需要按多少下鍵盤(pán)。 ?輸入輸出格式?Input/output 輸入格式:
一行一個(gè)句子,只包含英文小寫(xiě)字母和空格,且不超過(guò) 200 個(gè)字符。 輸出格式:
一行一個(gè)整數(shù),表示按鍵盤(pán)的總次數(shù)。 ?輸入輸出樣例?Sample input/output 樣例測(cè)試點(diǎn)#1

輸入樣例:

i have a dream

輸出樣例:

23

思路:這題較為簡(jiǎn)單,可以先打表,這個(gè)比較快捷(記錄每個(gè)按鍵所要按的次數(shù)),每次只輸入一個(gè)字符,找到在表里面的答案加上計(jì)數(shù)器即可。

注意:輸入數(shù)據(jù)有若干句,一行一句,所以要用文件讀入。

代碼如下:

1 #include <stdio.h> 2 #include <string.h> 3 int ans1[30]={1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,4,1,2,3,1,2,3,4,1};//打表,統(tǒng)計(jì)每個(gè)按鍵所需的次數(shù) 4 int phone(char a[]) 5 { 6 int ans=0,i; 7 for(i=0;i<strlen(a);i++) 8 { 9 if(a[i]!=' ')//字母 10 { 11 ans+=ans1[a[i]-97];//計(jì)數(shù)器加上表內(nèi)的數(shù)字 12 } 13 else //空格,計(jì)數(shù)器++ 14 { 15 ans+=1; 16 } 17 } 18 return ans; 19 } 20 int main() 21 { 22 char a[201]; 23 gets(a); 24 while(a[strlen(a)-1]!=EOF)//如果還沒(méi)到文件結(jié)尾,傳入函數(shù) 25 { 26 printf("%d\n",phone(a)); 27 gets(a); 28 } 29 return 0; 30 }

?

轉(zhuǎn)載于:https://www.cnblogs.com/geek-007/p/4733219.html

總結(jié)

以上是生活随笔為你收集整理的NOIP2010-普及组复赛模拟试题-第一题-手机的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。