前言
这是一套12年的CF的题,题目难度相对来说主要是考察阅读理解
一、题目链接
题意:给你三个音符,判断能否组成major、minor。要么就是strange
#include<iostream>
#include<string>
using namespace std;
int i,x[12];
int main()
{
string s[12]={"C","C#","D","D#","E","F","F#","G","G#","A","B","H"},a,b,c;
cin>>a>>b>>c;
for(i=0;i<12;i++)
if(a==s[i]||b==s[i]||c==s[i])
x[i]=1;
for(i=0;i<12;i++)
if(x[i])
{
if(x[(i+4)%12]&&x[(i+7)%12])
{
cout<<"major";
return 0;
}
if(x[(i+3)%12]&&x[(i+7)%12])
{
cout<<"minor";
return 0;
}
}
cout<<"strange";
}
题意:给你一个键盘上键位的分布位置,让你判断能否打出给定的字符串,使用尽量少的双手,如果是一个小写字母
的话,那么小强就可以直接打印出来,如果是一个大写字母的话,那么就需要判断小写字母和S之间的欧几里得距离
是否小于D,如果小于D的话,那么小强,还是可以通过一个手打出来的
#include <bits/stdc++.h>
using namespace std;
const int N = 200;
int n,m;
double d;
vector<pair<int,int>>v[N];
vector<pair<int,int>> S;
string str;
int cnt;
int st[N];
double dist(int x1,int y1,int x2,int y2)
{
return sqrt((x1 - x2) * (x1 - x2) + (y1 - y2)*(y1 - y2));
}
int change(char c)
{
if(v[c - 'a'].