不要二_把字符串转成整数

举报
bug郭 发表于 2022/08/26 23:52:30 2022/08/26
【摘要】 不要二不要二import java.util.*;public class Main{ //( (x1-x2) * (x1-x2) + (y1-y2) * (y1-y2) ) 算数平方根不等于 2! // (x1-x2) * (x1-x2) + (y1-y2) * (y1-y2) ! = 4 // 0 + 4 = 4; // 1 + 3 = 4; // 2 +...

不要二

不要二

image-20220430142727639

import java.util.*;
public class Main{
    //( (x1-x2) * (x1-x2) + (y1-y2) * (y1-y2) ) 算数平方根不等于 2!
    // (x1-x2) * (x1-x2) + (y1-y2) * (y1-y2) ! = 4
    // 0 + 4 = 4;
    // 1 + 3 = 4;
    // 2 + 2 = 4;
    // 4 + 0 = 4;
    //也就是说两个相同的数相乘要等于 {0,1,2,3,4} 
    //整数相乘, 故只有 4 + 0 或者 0 + 4!
    // x1-x2!= 2 ! y1-y2!= 0;
    //即 x1!=x2+2; y1!=y2!
    //当 (x2,y2)坐标放了蛋糕时, (x2+2,y2) 就不能放蛋糕!
    // 同理 (x2,y2+2) 也不能放蛋糕!
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int w = sc.nextInt();
        int h = sc.nextInt();
        int[][] array = new int[w][h];
        int count = 0;
        for(int i = 0;i < w; i++){
            for(int j = 0;j < h; j++){
                if(array[i][j] == 0){
                    count++;
                    if(i+2 < w){
                        array[i+2][j] = 1;
                    }
                    if(j+2 < h){
                        array[i][j+2] = 1;
                    }
                }
            }
        }
        System.out.println(count);
    }
}

把字符串转换成整数

把字符串转换成整数

image-20220430145152834

public class Solution {
   public int StrToInt(String str) {
       //字符串中可能出现任意符号,出现除 +/- 以外符号时直接输出 0
       //字符串中可能出现 +/- 且仅可能出现在字符串首位
       if(str==null||str.length()==0){
           return 0;
       }
       //
       if((str.charAt(0)=='+'||str.charAt(0)=='-')&&str.length()==1){
           return 0;
       }
       boolean flag = false;
       int sum = 0;
       int i = 0;
       for( i = 0; i< str.length();i++){
           char ch = str.charAt(i);
           if(ch>'9'||ch<'0'){//不是数字!
                //字符首是否为 +/- 
               if(i==0){
              if(ch=='+'||ch=='-'){
                  if(ch=='-'){//负号保留,正号舍去!
                    flag = true;
                  }
              }else{//字符串开始位置 为其他非数字字符
                  sum = 0;
                  break;
              }
           }else{//非数字字符!
                   sum = 0;
                  break; 
               }
           }else{//数字字符
              sum = sum*10 + (ch-'0');
           }
       }
           if(flag){
               sum = -sum;
           }
           return sum;
   }
}
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。