久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

5.8

 玉詩 2014-05-08

2976:All in All

總時間限制:
1000ms
內(nèi)存限制:
65536kB
描述
給定兩個字符串s和t,請判斷s是否是t的子序列,。即從t中刪除一些字符,將剩余的字符連接起來,,即可獲得s。
輸入
包括若干個測試數(shù)據(jù)。每個測試數(shù)據(jù)由兩個ASCII碼的數(shù)字和字母串s和t組成,,s和t的長度不超過100000,。
輸出
對每個測試數(shù)據(jù),,如果s是t的子序列則輸出“Yes”,否則輸出“No”,。
樣例輸入
sequence subsequence
person compression
VERDI vivaVittorioEmanueleReDiItalia
caseDoesMatter CaseDoesMatter
樣例輸出
Yes
No
Yes
No
#include<stdio.h>
#include<string.h>
int main()
{char s[100100],t[100100];
int k,i,j,m,n;
while(scanf("%s",s)!=EOF && scanf("%s",t)!=EOF) 
{
m=strlen(s);
n=strlen(t);
for(i=0,j=0;i<=m-1,j<=n-1;j++)
{if(s[i]==t[j]) {
i++;
}
}

if(i==m)
printf("Yes\n");
else
printf("No\n");}
return 0;
}

2974:487-3279

總時間限制:
1000ms
內(nèi)存限制:
65536kB
描述
企業(yè)喜歡用容易被記住的電話號碼,。讓電話號碼容易被記住的一個辦法是將它寫成一個容易記住的單詞或者短語。例如,,你需要給滑鐵盧大學打電話時,,可以撥打TUT-GLOP。有時,,只將電話號碼中部分數(shù)字拼寫成單詞,。當你晚上回到酒店,可以通過撥打310-GINO來向Gino's訂一份pizza,。讓電話號碼容易被記住的另一個辦法是以一種好記的方式對號碼的數(shù)字進行分組,。通過撥打必勝客的“三個十”號碼3-10-10-10,你可以從他們那里訂pizza,。

電話號碼的標準格式是七位十進制數(shù),,并在第三、第四位數(shù)字之間有一個連接符,。電話撥號盤提供了從字母到數(shù)字的映射,,映射關(guān)系如下:
A, B, 和C 映射到 2
D, E, 和F 映射到 3
G, H, 和I 映射到 4
J, K, 和L 映射到 5
M, N, 和O 映射到 6
P, R, 和S 映射到 7
T, U, 和V 映射到 8
W, X, 和Y 映射到 9

Q和Z沒有映射到任何數(shù)字,連字符不需要撥號,,可以任意添加和刪除,。 TUT-GLOP的標準格式是888-4567,310-GINO的標準格式是310-4466,,3-10-10-10的標準格式是310-1010,。

如果兩個號碼有相同的標準格式,那么他們就是等同的(相同的撥號)

你的公司正在為本地的公司編寫一個電話號碼薄,。作為質(zhì)量控制的一部分,,你想要檢查是否有兩個和多個公司擁有相同的電話號碼。
輸入
輸入的格式是,,第一行是一個正整數(shù),,指定電話號碼薄中號碼的數(shù)量(最多100000),。余下的每行是一個電話號碼。每個電話號碼由數(shù)字,,大寫字母(除了Q和Z)以及連接符組成,。每個電話號碼中只會剛好有7個數(shù)字或者字母。
輸出
對于每個出現(xiàn)重復的號碼產(chǎn)生一行輸出,,輸出是號碼的標準格式緊跟一個空格然后是它的重復次數(shù),。如果存在多個重復的號碼,則按照號碼的字典升序輸出,。如果輸入數(shù)據(jù)中沒有重復的號碼,,輸出一行:
No duplicates.
樣例輸入
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
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char map[]="22233344455566677778889999";
char str[80],t[100000][9];
int compare(const void*elem1,const void*elem2){
	return(strcmp((char*)elem1,(char*)elem2));
};
int s(int n){
	int j,k;
	j=k=-1;
	while(k<8){
	j++;
	if(str[j]=='-')continue;
	k++;
	if(k==3){
	t[n][k]='-';
	k++;}
	if(str[j]>='A'&&str[j]<='Z'){
	t[n][k]=map[str[j]-'A'];
	continue;};
	t[n][k]=str[j];
}
	t[n][k]='\0';
	return 0;}
int main(){
int n,i,j;
bool noduplicate;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%s",str);
s(i);}
qsort(t,n,9,compare);
noduplicate=true;
i=0;while(i<n){
	j=i;i++;
	while(i<n&&strcmp(t[i],t[j])==0)i++;
	if(i-j>1){
	printf("%s %d\n",t[j],i-j);
	noduplicate=false;}
}
if(noduplicate)printf("No duplicates.\n");
return 0;}

2973:Skew數(shù)

總時間限制:
1000ms
內(nèi)存限制:
65536kB
描述
在 skew binary表示中, 第 k 位的值xk表示xk*(2k+1-1)。 每個位上的可能數(shù)字是0 或 1,,最后面一個非零位可以是2, 例如, 10120(skew) = 1*(25-1) + 0*(24-1) + 1*(23-1) + 2*(22-1) + 0*(21-1) = 31 + 0 + 7 + 6 + 0 = 44. 前十個skew數(shù)是 0、1,、2,、10、11,、12,、20、100,、101,、以及102。
輸入
輸入包含一行或多行,,每行包含一個整數(shù)n,。 如果 n = 0 表示輸入結(jié)束,否則n是一個skew 數(shù)
輸出
對于每一個輸入,,輸出它的十進制表示,。轉(zhuǎn)換成十進制后, n 不超過 231-1 = 2147483647
樣例輸入
10120
200000000000000000000000000000
10
1000000000000000000000000000000
11
100
11111000001110000101101102000
0
樣例輸出
44
2147483646
3
2147483647
4
7
1041110737
#include<stdio.h>
#include<string.h>
int main()
{int i,k,base[31],sum;
char skew[32];
base[0]=1;
for(i=1;i<31;i++)
base[i]=2*base[i-1]+1;
while(1)
{scanf("%s",skew);
if(strcmp(skew,"0")==0)
break;
sum=0;
k=strlen(skew);
for(i=0;i<strlen(skew);i++)
{k--;
sum+=(skew[i]-'0')*base[k];
}
printf("%d\n",sum);
}
return 0;
}

2972:確定進制

總時間限制:
1000ms
內(nèi)存限制:
65536kB
描述
6*9 = 42 對于十進制來說是錯誤的,,但是對于13進制來說是正確的,。即, 6(13) * 9(13) = 42(13), 而 42(13) = 4 * 131 + 2 * 130 = 54(10),。 你的任務(wù)是寫一段程序讀入三個整數(shù)p,、q和 r,然后確定一個進制 B(2<=B<=16) 使得 p * q = r. 如果 B有很多選擇, 輸出最小的一個,。例如: p = 11, q = 11, r = 121. 則有 11(3) * 11(3) = 121(3) 因為 11(3) = 1 * 31 + 1 * 30 = 4(10) 和 121(3) = 1 * 32 + 2 * 31 + 1 * 30 = 16(10),。 對于進制 10,有 11(10) * 11(10) = 121(10)。這種情況下,,應(yīng)該輸出 3,。如果沒有合適的進制,,則輸出 0。
輸入
輸入有 T組測試樣例,。 T在第一行給出,。每一組測試樣例占一行,包含三個整數(shù)p,、q,、r。 p,、q,、r的所有位都是數(shù)字,并且1 <= p,、q,、r <= 1,000,000。
輸出
對于每個測試樣例輸出一行,。該行包含一個整數(shù):即使得p * q = r成立的最小的B,。如果沒有合適的B,則輸出 0,。
樣例輸入
3
6 9 42
11 11 121
2 2 2
樣例輸出
13
3
0
#include<stdio.h>
#include<string.h>
long b2ten(char*x,int b){
	int ret=0,i;
	int len=strlen(x);
	for(i=0;i<len;i++){
		if(x[i]-'0'>=b)return -1;
		ret*=b;
		ret+=x[i]-'0';
	}
	return (long)ret;
}
int main(){
	int n,b;
	char p[8],q[8],r[8];
	long pa,qa,ra;
	scanf("%d",&n);
	while(n--){
	scanf("%s%s%s",q,p,r);
	for(b=2;b<=16;b++){
		pa=b2ten(p,b);
		qa=b2ten(q,b);
		ra=b2ten(r,b);
		if(pa==-1||qa==-1||ra==-1)continue;
		if(pa*qa==ra){
		printf("%d\n",b);
		break;}
	}
	if(b==17)printf("0\n");
	}
return 0;}

2966:時區(qū)轉(zhuǎn)換

總時間限制:
1000ms
內(nèi)存限制:
65536kB
描述
直到19世紀,,時間校準是一個純粹的地方現(xiàn)象。每一個村莊當太陽升到最高點的時候把他們的時鐘調(diào)到中午12點,。一個鐘表制造商人家或者村里主表的時間被認為是官方時間,,市民們把自家的鐘表和這個時間對齊。每周一些熱心的市民會帶著時間標準的表,,游走大街小巷為其他市民對表,。在城市之間旅游的話,在到達新地方的時候需要把懷表校準,。但是,,當鐵路投入使用之后,越來越多的人頻繁地長距離地往來,,時間變得越來越重要,。在鐵路的早期,時刻表非常讓人迷惑,,每一個所謂的??繒r間都是基于停靠地點的當?shù)貢r間,。時間的標準化對于鐵路的高效運營變得非常重要,。
在1878年,加拿大人Sir Sanford Fleming 提議使用一個全球的時區(qū)(這個建議被采納,,并衍生了今天我們所使用的全球時區(qū)的概念),,他建議把世界分成24個時區(qū),,每一個跨越15度經(jīng)線(因為地球的經(jīng)度360度,劃分成24塊后,,一塊為15度),。Sir Sanford Fleming的方法解決了一個全球性的時間混亂的問題。
美國鐵路公司于1883年11月18日使用了Fleming 提議的時間方式,。1884年一個國際子午線會議在華盛頓召開,,他的目的是選擇一個合適的本初子午線。大會最終選定了格林威治為標準的0度,。盡管時區(qū)被確定了下來,,但是各個國家并沒有立刻更改他們的時間規(guī)范,在美國,,盡管到1895年已經(jīng)有很多州開始使用標準時區(qū)時間,,國會直到1918年才強制使用會議制定的時間規(guī)范。
今天各個國家使用的是一個Fleming時區(qū)規(guī)范的一個變種,,中國一共跨越了5個時區(qū),,但是使用了一個統(tǒng)一的時間規(guī)范,比Coordinated Universal Time(UTC,,格林威制時間)早8個小時。俄羅斯也擁護這個時區(qū)規(guī)范,,盡管整個國家使用的時間和標準時區(qū)提前了1個小時,。澳大利亞使用3個時區(qū),其中主時區(qū)提前于他按Fleming規(guī)范的時區(qū)半小時,。很多中東國家也使用了半時時區(qū)(即不是按照Fleming的24個整數(shù)時區(qū)),。
因為時區(qū)是對經(jīng)度進行劃分,在南極或者北極工作的科學家直接使用了UTC時間,,否則南極大陸將被分解成24個時區(qū),。
時區(qū)的轉(zhuǎn)化表如下:
UTC Coordinated Universal Time
GMT Greenwich Mean Time, 定義為 UTC
BST British Summer Time, 定義為 UTC+1 hour
IST Irish Summer Time, 定義為 UTC+1 hour
WET Western Europe Time, 定義為 UTC
WEST Western Europe Summer Time, 定義為 UTC+1 hour
CET Central Europe Time, 定義為 UTC+1
CEST Central Europe Summer Time, 定義為 UTC+2
EET Eastern Europe Time, 定義為 UTC+2
EEST Eastern Europe Summer Time, 定義為 UTC+3
MSK Moscow Time, 定義為 UTC+3
MSD Moscow Summer Time, 定義為 UTC+4
AST Atlantic Standard Time, 定義為 UTC-4 hours
ADT Atlantic Daylight Time, 定義為 UTC-3 hours
NST Newfoundland Standard Time, 定義為 UTC-3.5 hours
NDT Newfoundland Daylight Time, 定義為 UTC-2.5 hours
EST Eastern Standard Time, 定義為 UTC-5 hours
EDT Eastern Daylight Saving Time, 定義為 UTC-4 hours
CST Central Standard Time, 定義為 UTC-6 hours
CDT Central Daylight Saving Time, 定義為 UTC-5 hours
MST Mountain Standard Time, 定義為 UTC-7 hours
MDT Mountain Daylight Saving Time, 定義為 UTC-6 hours
PST Pacific Standard Time, 定義為 UTC-8 hours
PDT Pacific Daylight Saving Time, 定義為 UTC-7 hours
HST Hawaiian Standard Time, 定義為 UTC-10 hours
AKST Alaska Standard Time, 定義為 UTC-9 hours
AKDT Alaska Standard Daylight Saving Time, 定義為 UTC-8 hours
AEST Australian Eastern Standard Time, 定義為 UTC+10 hours
AEDT Australian Eastern Daylight Time, 定義為 UTC+11 hours
ACST Australian Central Standard Time, 定義為 UTC+9.5 hours
ACDT Australian Central Daylight Time, 定義為 UTC+10.5 hours
AWST Australian Western Standard Time, 定義為 UTC+8 hours
下面給出了一些時間,請在不同時區(qū)之間進行轉(zhuǎn)化,。
輸入
輸入的第一行包含了一個整數(shù)N,,表示有N組測試數(shù)據(jù)。接下來N行,,每一行包括一個時間和兩個時區(qū)的縮寫,,它們之間用空格隔開。時間由標準的a.m./p.m給出,。midnight表示晚上12點(12:00 a.m.),,noon表示中午12點(12:00 p.m.)。
輸出
假設(shè)輸入行給出的時間是在第一個時區(qū)中的標準時間,,要求輸出這個時間在第二個時區(qū)中的標準時間,。
樣例輸入
4
noon HST CEST 
11:29 a.m. EST GMT
6:01 p.m. CST UTC
12:40 p.m. ADT MSK
樣例輸出
midnight
4:29 p.m.
12:01 a.m.
6:40 p.m.
#include<stdio.h>
#include<string.h>
int difference(char*zone1,char*zone2){
	char*zone[32]={"UTC","GMT","BST","IST","WET","WEST",
		"CET","CEST","EET","EEST","MSK","MSD","AST","ADT",
		"NST","NDT","EST","EDT","CST","CDT","MST","MDT","PST",
		"PDT","HST","AKST","AKDT","AEST","AEDT","ACST","ACDT",
		"AWST"};
	float time[32]={0,0,1,1,0,1,1,2,2,3,3,4,-4,-3,-3.5,-2.5,-5,-4,-6,-5,-7,
		-6,-8,-7,-10,-9,-8,10,11,9.5,10.5,8};
	int i,j;
	for(i=0;strcmp(zone[i],zone1);i++);
	for(j=0;strcmp(zone[j],zone2);j++);
	return(int)((time[i]-time[j])*60);
}
int main()
{int nCases;
scanf("%d",&nCases);
for(int i=0;i<nCases;i++)
{char time[9];
int hours,minutes;
scanf("%s",time);
switch(time[0]){
case 'n':hours=12;
	minutes=0;
	break;
case 'm':hours=0;
	minutes=0;
	break;
default:sscanf(time,"%d:%d",&hours,&minutes);
	hours%=12;
	scanf("%s",time);
	if(time[0]=='p')
		hours+=12;
}
char timezone1[5],timezone2[5];
scanf("%s%s",timezone1,timezone2);
int newTime;
newTime=hours*60+minutes+difference(timezone2,timezone1);
if(newTime<0)
newTime+=1440;
newTime%=1440;
switch(newTime){
case 0:printf("midnight\n");
	break;
case 720:printf("noon\n");
	break;
default:hours=newTime/60;
	minutes=newTime%60;
	if(hours==0)
		printf("12:%02d a.m.\n",minutes);
	else if(hours<12)
		printf("%d:%02d a.m.\n",hours,minutes);
	else if(hours==12)
		printf("12:%02d p.m.\n",minutes);
	else 
		printf("%d:%02d p.m.\n",hours%12,minutes);
}
}
return 0;
}
 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導購買等信息,謹防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多