#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int N=1e5+100;
int main(){
int t;
cin >> t;
while(t--){
ll n , x;
cin >> n >>x;
cout << 2ll * x << "
";
}
return 0;
}
特判行列相交的点
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int N=1e5+100;
int q;
int n,m;
int d1[N];
int d2[N];
int main(){
cin >> q;
while(q--){
cin >> n >> m;
int a[n+10][m+10];
for(int i=0;i<n;i++)
d1[i]=0;
for(int i=0;i<m;i++){
d2[i]=0;
}
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
char c;
cin >> c;
if(c=='*') {
a[i][j]=1;
d1[i]++,d2[j]++;
}
else a[i][j]=0;
}
}
int m1=n*m;
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
if(a[i][j]==0){
m1=min(m1,n+m-1-d1[i]-d2[j]);
}
else{
m1=min(m1,n+m-d1[i]-d2[j]);
}
}
}
cout << m1 << "
";
}
return 0;
}
s长度需要小于t,s串顺序在t串中必须存在,s串和p串每个字母的数量之和要大于t串。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int N=1e5+100;
int q;
char s[3][200];
int a[3][26];
int main(){
cin >> q;
while(q--){
for(int i=0;i<3;i++){
cin >> s[i];
for(int j=0;j<26;j++){
a[i][j]=0;
}
}
int l1=strlen(s[0]),l2=strlen(s[1]);
if(l1>l2){
cout << "NO
";
continue;
}
int i1=0,i2=0;
for( i2=0;i2<l2;i2++){
if(s[0][i1]==s[1][i2]){
i1++;
if(i1==l1) break;
}
}
if(i1!=l1) {
cout << "NO
";
continue;
}
for(int i=0;i<3;i++){
for(int j=0;j<strlen(s[i]);j++){
a[i][s[i][j]-'a']++;
}
}
bool flag=0;
for(int i=0;i<26;i++){
if(a[0][i]+a[2][i]<a[1][i] || a[0][i]>a[1][i]){
cout << "NO
";
flag=1;
break;
}
}
if(flag) continue;
cout << "YES
";
}
return 0;
}