你快来看呀

C++实现的特殊对话游戏

#include <iostream>
#include <string>
#include <chrono>
#include <thread>
#include <vector>
#include <algorithm>

using namespace std;
using namespace std::chrono;

bool isValidMessage(const string& message, const vector<string>& history) {
    // 检查是否包含禁用词
    const string bannedWords[] = {"你", "我", "他"};
    for (const string& word : bannedWords) {
        if (message.find(word) != string::npos) {
            return false;
        }
    }

    // 检查是否长度小于5个字符
    if (message.length() < 5) {
        return false;
    }

    // 检查是否重复
    if (find(history.begin(), history.end(), message) != history.end()) {
        return false;
    }

    return true;
}

int main() {
    vector<string> player1History;
    vector<string> player2History;

    cout << "欢迎来到特殊对话游戏!" << endl;
    cout << "请两位玩家依次输入发言内容,遵守以下规则:" << endl;
    cout << "1. 不能说' ', ' ', ' '//自己猜是啥" << endl;
    cout << "2. 发言//自己猜是啥" << endl;
    cout << "3. 不能//自己猜是啥" << endl;
    cout << "4. 对话时间为100秒" << endl;
    //cout << "1. 不能说'你', '我', '他'" << endl;
    //cout << "2. 发言长度不能低于5个字" << endl;
    //cout << "3. 不能重复同一句话" << endl;
    //cout << "4. 对话时间为100秒" << endl; 
    steady_clock::time_point startTime = steady_clock::now();
    auto endTime = startTime + seconds(100);

    int player1Faults = 0;
    int player2Faults = 0;
    bool isPlayer1Turn = true;

    while (steady_clock::now() < endTime) {
        string input;
        cout << (isPlayer1Turn ? "玩家1:" : "玩家2:");
        getline(cin, input);

        vector<string>& currentPlayerHistory = isPlayer1Turn ? player1History : player2History;

        if (!isValidMessage(input, currentPlayerHistory)) {
            cout << "违规发言!" << endl;
            if (isPlayer1Turn) {
                player1Faults++;
            } else {
                player2Faults++;
            }
        } else {
            currentPlayerHistory.push_back(input);
        }

        isPlayer1Turn = !isPlayer1Turn;
    }

    cout << "游戏结束!" << endl;
    cout << "玩家1违规次数:" << player1Faults << endl;
    cout << "玩家2违规次数:" << player2Faults << endl;

    if (player1Faults > player2Faults) {
        cout << "玩家2胜利!" << endl;
    } else if (player1Faults < player2Faults) {
        cout << "玩家1胜利!" << endl;
    } else {
        cout << "平局!" << endl;
    }

    return 0;
}
 

为了查找与测绘遥感相关的SCI期刊列表,可以通过学术搜索引擎或访问特定的数据库来获得最新的信息。通常这些资源会定期更新以反映最新收录情况。 些常用的搜索方式包括: 查阅Web of Science (WOS) 数据库 这是最直接的方法之,因为Science Citation Index(SCI)正是由该数据库维护。可以在其中设置关键词为"remote sensing", "surveying and mapping" 或者更具体的主题术语,并选择仅显示被SCI索引的文章和期刊。 利用Google Scholar 虽然不是专门针对SCI期刊,但可以找到很多高影响力的测绘遥感类文章及其发表刊物的信息。从这里也可以了解到哪些是活跃且受认可的研究领域内的出版物。 参考Journal Citation Reports (JCR) 这是个评估科学和技术期刊影响力的重要工具。通过查看影响因子和其他指标,可以帮助确定哪些测绘遥感领域的期刊最具权威性并且属于SCI范畴。 咨询图书馆员或专业人士 大学或研究机构的专业人员能够提供指导和支持,帮助定位最适合需求的具体期刊名称及详情。 订阅行业通讯和服务 某些服务如Elsevier's Scopus也会报告关于各个学科顶级期刊的消息,保持关注可以获得及时的通知。 以下是几个知名的测绘遥感相关SCI期刊的例子: - Remote Sensing of Environment - IEEE Transactions on Geoscience and Remote Sensing - ISPRS Journal of Photogrammetry and Remote Sensing - International Journal of Applied Earth Observation and Geoinformation 请注意,实际的SCI期刊名单可能会随着时间而变化,因此建议总是使用最新的在线资源来进行确认。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值