北郵計院13上機真題

2021-08-16 19:06:42 字數 3655 閱讀 8097

accept:207 submit:852

time limit:1000ms memory limit:65536kb

description

請你計算出第x年y月z日是第x年的第幾天。其中,1月1日是第一天,1月2日是第二天,以此類推。

計算時請注意閏年的影響。對於非整百年,年數能整除4是閏年,否則不是閏年;對於整百年,年數能整除400是閏年,否則不是閏年。如2023年和2023年不是閏年,而2023年和2023年是閏年。

inputformat

第一行有乙個整數t(t≤

100 ),表示一共有t組資料需要你處理。

接下來一共有t行,每行是乙個如下格式的字串:x:y:z,表示你需要計算第x年y月z日是第x年的第幾天。其中x是乙個大於0,小於2100的整數。保證字串的格式都是合法的,字串所表示的日期也都是存在的。

outputformat

對於每組資料,你需要輸出乙個整數,表示所求得的結果。

sampleinput

2 2013:4:12

112:4:12

sampleoutput

102

103

#include 

#define _crt_secure_no_warnings

using

namespace

std;

int data1[13][32] = ;

int data2[13][32] = ;

int moth1[13] = ;

int moth2[13] = ;

int main(int argc, char *argv)

}k = 1;

//閏年

for (int j = 1; j<13; j++)

for (int q = 1; q <= moth2[j]; q++)

int n;

while (cin >> n != eof) //eop=-1

else}}

//system("pause");

return

0;}

accept:88 submit:547

time limit:1000ms memory limit:65536kb

description

給出一棵有向樹,一共有n (1#include

using namespace std;

struct node

a[1010];

int c[1010]=;

int d[1010]=;

int main()

c[s]=0;

a[s].father=0;

a[s].count=0;

d[s]=-1;

}int n;

cin>>n;

for(int j=0;j1;j++)

int ans=0;

for(int j=0;jint flag=1;

if(d[j]==-1)

}

}else

if(c[j]!=0)

} if(a[j].count

count)

}else

if(a[j].count

count)

if(flag==1)

ans++;

}cout0;}accept:155 submit:502

time limit:1000ms memory limit:65536kb

description

給出乙個序列,判斷該序列是不是某二叉搜尋樹的中序遍歷序列,如果是輸出」yes」,否則輸出」no」。

一顆帶權二叉樹是一顆二叉搜尋樹(二叉排序樹),當且僅當對於任意乙個節點,他的左子樹中的所有權值小於當前節點的權值,且它的右子樹中的所有權值均大於當前節點的權值。

input format

第一行t (t/leq10 )代表資料組數。

每組資料報括兩行:

第一行為乙個整數n ($1/leq x /leq 400),表示序列的長度。

第二行包含n 個整數,表示這個這個序列,序列中的數的x 範圍為($1/leq x/leq 100000)。

output format

每組資料,如果是二叉搜尋樹的中序遍歷序列輸出」yes」,否則輸出」no」。

input

2 4

1 2 3 4

4 1 3 2 4

output

yes

no

#include 

#include

using

namespace

std;

int a[402]=;

int main()

for(int i=0;i1;i++)

}if(flag==0)

cout

<<"yes"

cout

<<"no"

0;}

accept:2 submit:433

time limit:1000ms memory limit:65536kb

description

給定乙個由小寫字母a到z組成的字串s,其中第i個字元為s[i](下標從0開始)。你需要完成下面兩個操作:

insert c

其中c是乙個待輸入的字元。你需要在字串的末尾新增這個字元。保證輸入的字元同樣是a到z之間的乙個小寫字母。

query x

其中x是乙個輸入的整數下標。對於這個詢問,你需要回答在s當中和s[x]相等且與x最近的距離。輸入保證x在當前字串中合法。

例如s = 「abcaba」,如果我們操作:

insert a

則在s的末端加乙個字元a,s變成」abcabaa」。

接下來操作

query 0

由於s[0] = a,在s中出現的離他最近的a在下標為3的位置上,距離為3 - 0 = 3。因此應當輸出3。

接下來,如果

query 4

s[4] = b,s中離它最近的b出現在下標為1處,距離為4 - 1 = 3。同樣應當輸出3。

給定初始字串s和若干操作,對於每個query,你需要求出相應的距離。

inputformat

輸入的第一*行是乙個正整數t (t≤20 ),表示測試資料的組數。

每組輸入資料的第一行是乙個初始串s。第二行是乙個正整數m (1≤m≤100000 ),表示總共操作的數量。接下來m行,每行表示乙個操作。操作的格式如上所述。

資料保證在任何情況下,s的長度不會超過100000。

outputformat

對於每個query,輸出所求的最小距離。如果s中其它位置都不存在和它相同的字元,輸出-1。

sampleinput

2 axb

3 insert a

query 0

query 1

explore

3 insert r

query 7

query 1

sampleoutput

3 -1

2 -1

hint

由於輸入資料較大,c/c++中推薦使用scanf進行讀入以獲得更快的讀入速度。同時請注意演算法複雜度。

北郵OJ 87 日期 13計院上機A

題目描述 請你計算出第x年y月z日是第x年的第幾天。其中,1月1日是第一天,1月2日是第二天,以此類推。計算時請注意閏年的影響。對於非整百年,年數能整除4是閏年,否則不是閏年 對於整百年,年數能整除400是閏年,否則不是閏年。如1900年和1901年不是閏年,而2000年和2004年是閏年。輸入格式...

2012北郵網研院上機題

a 列印字串 時間限制 1000 ms 記憶體限制 65536 kb 題目描述 老師有乙個問題想考考mabo,但是mabo不會,所以想請你來幫幫忙。問題如下 給一串字串,統計其中某個字元的個數。輸入格式 首先輸入乙個整數t,表示一共有t組資料 0 t 10。接下來每行乙個字母x x為 a z 或者 ...

2011北郵計算機院複試上機題

problem.a 反轉單詞 思路 經典的考察對於輸入輸出流的理解的題,可作為模板記住,用字串型的棧儲存輸入的單詞,因為題中說明了沒有連續空格也沒有標點符號,所以可以放心使用cin,跳過空格但不跳過回車,回車需要特殊處理。個人認為也可用getline cin,str,作為迴圈條件 如果包含空格或者是...