A.国际旅行Ⅰ
题意:
给出一段序列,求里面第k小的数
思路:
直接排序求值(没有一点难度)
代码:
void solve () {
int n,m,q;cin>>n>>m>>q;
for (int i=1;i<=n;i++) {
cin>>a[i];
}int x,y;
sort(a+1,a+1+n);
for (int i=1;i<=m;i++) {
cin>>x>>y;
}int p;
for (int i=1;i<=q;i++) {
cin>>p;
cout<<a[p]<<'\n';
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
接下来登场的就更是一道逆天题了
F.水灵灵的学弟
题意:
博弈题,但是两个人名字一样,直接输出他们的名字就行了
思路:
没有思路,直接写
代码
void solve () {
int t;cin>>t;
while (t--) {
int x,y;cin>>x>>y;
cout<<"DHY"<<'\n'
}
}
1
2
3
4
5
6
7
I.重生之zbk要拿回属于他的一切
题意:
在给出的一串字符串里面找有几个“chuan”
思路:
用find函数直接找,找到了之后再往后找,直到find为-1的时候停止
代码:
void solve () {
int n;cin>>n;
string s;cin>>s;
int x=0,cnt=0;
while (1) {
x=s.find("chuan");
if (x==-1) {
break;
}
cnt++;
s.erase(x,5);
}
cout<<cnt;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
J.这是签到
题意:
给出n×m的序列,按照题意求出最小的行列式的大小
思路:
此题无方思路茫,暴力求解泪两行。
代码:
void solve () {
int n,m;cin>>n>>m;
for (int i=1;i<=n;i++) {
for (int j=1;j<=m;j++) {
cin>>a[i][j];
}
}
int ma=min(n,m);int ans=INT_MAX;
for (int i=1;i<=ma;i++) {
if (i==1) {
ans=min(a[1][1],ans);
}
if (i==2) {
int t=a[1][1]a[2][2]-a[1][2]a[2][1];
ans=min(ans,t);
}
if (i==3) {
int t1=a[1][1]a[2][2]a[3][3]+a[1][2]a[2][3]a[3][1]+a[1][3]a[2][1]a[3][2];
int t2=a[1][3]a[2][2]a[3][1]+a[1][1]a[2][3]a[3][2]+a[1][2]a[2][1]a[3][3];
ans=min(ans,t1-t2);
// cout<