2016-8-4夏令營入營測試總結
本次的測試從思維和程式設計角度上來說都是很簡單的,然而在時間上卻並不簡單。雖然說我們現在的水平已經相當不錯,但是考的仍然不是很好,估計是久離演算法的緣故了。
題目的連結是http://pan.baidu.com/s/1hrIQMry。
【T1:音階】
這題很水,直接做吧,只不過要注意題目中是“最後一個音符”而不是“最後一節的重音”。
/*
A MT : A D E
C MT : C F G
*/
# include <cstdio>
# include <cstring>
using namespace std;
const int MAXL = 120;
char music[MAXL];
int A_MT,C_MT;
int main(){
freopen("ljestvica.in","r",stdin);
freopen("ljestvica.out","w",stdout);
scanf("%s",music);
int len = strlen(music);
bool nowisFirst = true;
A_MT = C_MT = 0;
for (int i=0;i<len;++i){
if (nowisFirst){
if (music[i] == 'A' || music[i] == 'D' || music[i] == 'E') ++A_MT;
if (music[i] == 'C' || music[i] == 'F' || music[i] == 'G') ++C_MT;
}
if (music[i] == '|') nowisFirst = true;
else nowisFirst = false;
}
if (A_MT == C_MT)
if (music[len-1] == 'C' || music[len-1] == 'F' || music[len-1] == 'G')
printf("C-dur");
else printf("A-mol");
else if (A_MT > C_MT) printf("A-mol");
else printf("C-dur");
return 0;
}
【T2:波老師】
真是奇怪的題目……好吧這題有個很簡單的暴力,就是
# include <algorithm>
# include <cstring>
# include <cstdio>
# include <cmath>
using namespace std;
const int MAXN = 2000010;
pair<int,int> Point[MAXN];
int T;
int n,m;
/*Water!*/
//int MLen[MAXN*MAXN];
bool f[MAXN];
bool found;
//int size = 0;
int main(){
freopen("teacher.in","r",stdin);
freopen("teacher.out","w",stdout);
scanf("%d",&T);
for (int kase = 0 ; kase < T ; ++kase){
/*Initial*/
memset(f,false,sizeof(f));
// size = 0;
scanf("%d%d",&n,&m);
for (int i=0;i<n;++i){
scanf("%d%d",&Point[i].first,&Point[i].second);
}
sort(Point+0,Point+n);
/*Water!*/
found = false;
for (int i=0;i<n;++i){
for (int j=0;j<i;++j){
int dis = abs(Point[i].first-Point[j].first)+abs(Point[i].second-Point[j].second);
if (f[dis]){
found = true;
break;
}
else f[dis] = true;
}
}
/*
bool found = false;
sort(MLen+0,MLen+size);
for (int i=1;i<size;++i){
if (MLen[i] == MLen[i-1]){
found = true;
}
}
*/
if (found) printf("YES\n");
else printf("NO\n");
}
return 0;
}
好吧另外補一下,其實這其中有用到鴿巢原理的……考慮到,其實只有最多
【T3:爆裂吧世界】
先吐槽一下名字~出題人沒有改過來吧。好吧,這題的思維難度比較大,而我是在臨考試結束前十幾分鍾時想出來的,根本沒有時間編了~然而我的想法和出題人的一樣……
好吧不說廢話了,這道題目題面已經足夠明晰,那麼對於其的做法,我們先要參考一下逆序對的樹狀陣列解法,在這裡我們可以知道如何求出在第
總之很簡單。那麼我們考慮一下這個能幹什麼。考慮將這個四元組
然後相應求出來就好了。怎麼求呢?這裡以
於是便求完了,程式碼如下:
/*
目前並沒有寫完,稍後補上
*/
其實這道題並不難,只是程式碼量有點大,不是那種能在