1. 首页
  2. 比赛
  3. 评测记录
  1. 登录
  2. 注册
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文

不知道 (谭红中)

UID: 1172, 注册于 2022-3-1 21:19:22, 最后登录于 2024-3-22 22:15:00, 目前离线.

解决了 297 道题目,RP: 245.12 (No. 104)

♂
  • 个人简介

    image

    #include <iostream>
    using namespace std;
    
    struct R{
        int bx,by,x,y;
        char to;
    };
    R f={0,0,0,0,'B'},c={0,0,0,0,'B'};
    char map[11][11];
    int ans=0,vis[12][12][12][12];
    
    void move(R r){
        if(r.to=='B'&&map[r.x-1][r.y]!='*')   r.x-=1;
        else if(r.to=='B'&&map[r.x-1][r.y]=='*')   r.to='D';
        else if(r.to=='D'&&map[r.x][r.y+1]!='*')   r.y+=1;
        else if(r.to=='D'&&map[r.x][r.y+1]=='*')   r.to='N';
        else if(r.to=='N'&&map[r.x+1][r.y]!='*')   r.x+=1;
        else if(r.to=='N'&&map[r.x+1][r.y]=='*')   r.to='X';
        else if(r.to=='X'&&map[r.x][r.y-1]!='*')   r.y-=1;
        else   r.to='B';
    }
    
    int main(){
        for(int i=0;i<=11;i++)
            for(int j=0;j<=11;j++){
                if(i==0||i==11||j==0||j==11){
                    map[i][j]='*';
                    continue;
                }
                cin>>map[i][j];
                if(map[i][j]=='C'){
                    c.bx=c.x=i;
                    c.by=c.y=j;
                    map[i][j]='.';
                }
                if(map[i][j]=='F'){
                    f.bx=f.x=i;
                    f.by=f.y=j;
                    map[i][j]='.';
                }
            }
    
        while(c.x==f.x&&c.y==f.y){
            if(vis[c.x][c.y][f.x][f.y]){
                cout<<0;
                return 0;
            }
            vis[c.x][c.y][f.x][f.y]=1;
            move(c);
            move(f);
            ans++;
        }
    
        cout<<ans;
        return 0;
    }
    
  • 最近活动

    • 蓝桥杯省赛模拟题2 IOI
    • 蓝桥杯省赛模拟题1 IOI
    • GESP-考试 IOI
    • 入营测试 IOI
    • 基础语法测试 作业
    • 蓝桥杯C++练习2 IOI
    • 蓝桥杯C++练习1 IOI
    • 电子学会考核一级模拟题-3 IOI
    • C++第06课-赛码争霸赛-1 作业
    • 电子学会考核一级模拟题-1 IOI
    • 等级考试一级练习 作业
    • 第03课-闰年判断器 作业
    • C++第02课-摩斯电码发报机 作业
    • 【C++01】基本输出练习 作业
343
已递交
297
已通过
0
题解被赞

状态

  • 评测队列
  • 服务状态

开发

  • 开源
  • API

支持

  • 帮助
  • QQ 群
  1. 关于
  2. 联系我们
  3. 隐私
  4. 服务条款
  5. 版权申诉
  6. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  7. 兼容模式
  8. 主题
    1. 亮色
    2. 暗色

  1. 京ICP备2023040334号-1 | Copyright © 2024-2025 小赛码 All Rights Reserved.

  2. Worker 0, 23ms
  3. Powered by Hydro v4.14.1 Community

还没有账户?

注册一个 XSM 通用账户,您就可以在我们提供的所有在线评测服务上提交代码、参与讨论。

现在注册
关闭

登录

使用您的 XSM 通用账户

忘记密码或者用户名?