1 条题解

  • 0
    @ 2023-6-11 12:18:43

    C++ :

    #include<bits/stdc++.h>
    using namespace std;
    int a[21][21] ={0};
    char b[100];
    int  c[100];
    int main(){
       int j,i,d,x = 10,y = 10;
       cin>>d;
       for(i = 0;i < d;i++){
       	  cin>>b[i] >> c[i];
       }
       a[x][y] = 1;
       //计算机器人走过的距离
       for(i = 0;i < d;i++){
       	  if(b[i] == 'L'){         //向左走
       	     for(j = y;j >= y - c[i];j--){
       	        a[x][j] = 1;	
    	 	 } 	
    	 	 y = y - c[i];
    	  }else if(b[i] == 'R'){   //向右走
       	     for(j = y;j <= y + c[i];j++){
       	        a[x][j] = 1;	
    	 	 } 	
    	 	 y = y + c[i];
    	  }else if(b[i] == 'D'){   //向下走
       	     for(j = x;j <= x + c[i];j++){
       	        a[j][y] = 1;	
    	 	 } 	
    	 	 x = x + c[i];
    	  }else if(b[i] == 'U'){   //向上走
       	     for(j = x;j >= x - c[i];j--){
       	        a[j][y] = 1;	
    	 	 } 	
    	 	 x = x - c[i];
    	  }  
       }
       int num = 0;
       for(i = 0;i <= 20;i++){
       	  for(j = 0;j <= 20;j++){
       	     if(a[i][j] == 1){
       	        num++;
    		 } 	
    	  }
       } 
       cout<<num<<endl;
    }
    
    
    • 1

    【基础】机器人的移动(robot.cpp)

    信息

    ID
    2488
    时间
    1000ms
    内存
    16MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者