复制粘贴吧 关注:242,289贴子:2,103,412
  • 3回复贴,共1
```cpp
#include <iostream>
#include <vector>
using namespace std;
class SequenceList {
private:
vector<int> data;
int length;
public:
void inputData() {
cout << "第一行输入表的长度:";
cin >> length;
cout << "第二行依次输入顺序表初始存放的n个元素值:";
data.resize(length);
for (int i = 0; i < length; ++i) {
cin >> data[lbk]i[rbk];
}
}
int getMthScore(int m) {
if (m >= 1 && m <= length) {
return data[lbk]m - 1[rbk];
}
return -1; // 无效序号返回-1
}
int findScoreG(int g) {
for (int i = 0; i < length; ++i) {
if (data[lbk]i[rbk] == g) {
return i + 1; // 返回序号(索引+1)
}
}
return -1; // 未找到返回-1
}
bool deleteKth(int k) {
if (k >= 1 && k <= length) {
data.erase(data.begin() + k - 1);
length--;
return true;
}
return false;
}
void printData() {
for (int i = 0; i < length; ++i) {
cout << data[lbk]i[rbk] << " ";
}
cout << endl;
}
};
int main() {
SequenceList sl;
sl.inputData();
int m;
cout << "第三行输入取值序号m:";
cin >> m;
int mScore = sl.getMthScore(m);
cout << "第一行输出序号为" << m << "的成绩:" << mScore << endl;
int g;
cout << "第四行输入查找成绩g:";
cin >> g;
int gIndex = sl.findScoreG(g);
cout << "第二行输出成绩" << g << "的最小序号:" << gIndex << endl;
int k;
cout << "第五行输入要删除的序号k:";
cin >> k;
if (sl.deleteKth(k)) {
cout << "第三行依次输出完成删除后的成绩:";
sl.printData();
} else {
cout << "删除序号无效!" << endl;
}
return 0;
}
```


IP属地:山东来自Android客户端1楼2025-04-23 11:01回复
    #include<bits/stdc++.h>
    using namespace std;
    const int N=100010;
    struct person{
    string name;
    string lastname;
    int gender;
    int parent=0;
    bool iceLand=1;
    }P[N];
    int n;
    int Find(string x){
    for(int i=1;i<=n;i++){
    if(P[i].name==x) return i;
    }
    return -1;
    }
    bool dfs(int a,int b,int c){
    cout<<a<<" "<<b<<" "<<c<<P[a].parent<<" "<<P[b].parent<<endl;
    if(c==5) return true;
    if(P[a].parent==P[b].parent) return false;
    if(P[a].parent==0||P[b].parent==0) return true;
    return dfs(P[a].parent,P[b].parent,c+1);
    }
    int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
    cin>>P[i].name>>P[i].lastname;
    if(P[i].lastname.find("sson")!=-1) P[i].gender=1;
    else{
    if(P[i].lastname[P[i].lastname.size()-1]=='m'){
    P[i].gender=1;
    P[i].iceLand=0;
    }
    else if(P[i].lastname[P[i].lastname.size()-1]=='f'){
    P[i].gender=0;
    P[i].iceLand=0;
    }
    else P[i].gender=0;
    }
    }
    for(int i=1;i<=n;i++){
    string str;
    if(P[i].gender==1) str=P[i].lastname.substr(0,P[i].lastname.size()-4);
    else str=P[i].lastname.substr(0,P[i].lastname.size()-7);
    //cout<<str<<" "<<P[i].gender<<endl;
    if(P[i].iceLand){
    for(int j=1;j<=n;j++){
    if(P[j].iceLand&&P[j].name==str) P[i].parent=j;
    }
    }
    }
    int m;
    cin>>m;
    for(int i=1;i<=m;i++){
    string name1,lastname1;
    string name2,lastname2;
    cin>>name1>>lastname1>>name2>>lastname2;
    int num1=Find(name1),num2=Find(name2);
    if(num1==-1||num2==-1) cout<<"NA"<<endl;
    else if(P[num1].gender==P[num2].gender) cout<<"Whatever"<<endl;
    else if(P[num1].iceLand==0||P[num2].iceLand==0||dfs(num1,num2,1)) cout<<"Yes"<<endl;
    else cout<<"No"<<endl;
    }
    return 0;
    }


    IP属地:山东来自Android客户端2楼2025-04-23 18:19
    回复
      2026-08-16 10:10:28
      广告
      不感兴趣
      开通SVIP免广告
      你们发的这乱七八糟的都是什么,我复制到拼多多怎么没反应


      IP属地:北京来自Android客户端3楼2025-04-23 23:57
      收起回复