• VMware coding Challenge:Date of Weekday


    这道题再次证明了这种细节的题目,画个图容易搞清楚

     1 import java.util.Scanner;
     2 
     3 
     4 public class Solution2 {
     5     static int DateOfWeekday(int date, int weekday) {
     6         int cur = date%7;
     7         int res = 0;
     8         int dif = 0;
     9         if (weekday > 0) {
    10             dif = 7*((weekday-1)/7) + (weekday%7-cur>0? weekday%7-cur : 7-(cur-weekday%7));
    11             res = date + dif;
    12         }
    13         else if (weekday < 0){
    14             weekday = Math.abs(weekday);
    15             dif = 7*((weekday-1)/7) + (cur-weekday%7>0? cur-weekday%7 : 7-(weekday%7-cur));
    16             res = date - dif;
    17         }
    18         else res = date;
    19         return res;
    20     }
    21     
    22     public static void main(String[] args) {
    23         Scanner in = new Scanner(System.in);
    24         int res;
    25         int _date;
    26         _date = Integer.parseInt(in.nextLine());
    27         
    28         int _weekday;
    29         _weekday = Integer.parseInt(in.nextLine());
    30         
    31         res = DateOfWeekday(_date, _weekday);
    32         System.out.println(res);
    33     }
    34 
    35 }
     1     static int DateOfWeekday(int date, int weekday) {
     2         int cur = date % 7;
     3         int res;
     4         if (weekday == 0) return date;
     5         else if (weekday > 0) { 
     6             if (weekday % 7 > cur) res = date + weekday % 7 - cur;
     7             else res = date + 7 - (cur - weekday % 7);
     8             res = res + 7*((weekday-1)/7);
     9         }
    10         else {
    11             if (Math.abs(weekday % 7)<cur) res= date - cur - weekday % 7;
    12             else res = date - 7 - cur - weekday%7;
    13             res = res - 7*((Math.abs(weekday)-1)/7);
    14         }
    15         return res;
    16     }
  • 相关阅读:
    雅虎天气API调用
    HttpOperater
    HttpOperater-模拟HTTP操作类
    页面局部加载,适合Ajax Loading场景(Demo整理)
    FTPHelper-封装FTP的相关操作
    使用SOCKET实现TCP/IP协议的通讯
    IIS目录禁止执行权限
    Oracle10g 安装步骤
    SQL Server 2008、SQL Server 2008R2 自动备份数据库
    SQL列转行
  • 原文地址:https://www.cnblogs.com/EdwardLiu/p/4303194.html
Copyright © 2020-2023  润新知