🎉 黑五感恩回馈!VIP、蓝莓大促销,抢购开始!🦃 点击查看详情
查看: 3408|回复: 10
收起左侧

Stripe 现场

|只看干货
本楼: 👍   100% (4)
 
 
0% (0)   👎
全局: 👍   99% (197)
 
 
0% (1)    👎

2021(7-9月) 工程类 硕士 全职@ - 猎头 - Onsite  | 😐 Neutral 😐 AverageWaitList | 在职跳槽
本帖最后由 wangzhuyun32 于 2021-9-23 12:
您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 188 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
希望帮到大家。


本帖子中包含更多资源

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x

评分

参与人数 8大米 +9 收起 理由
LYNN_G + 2 很有用的信息!
yhb2014ok + 1 给你点个赞!
iwillremember + 1 给你点个赞!
Charlee_Fu + 1 给你点个赞!
小亩_9b622d4 + 1 给你点个赞!
yhcbme + 1 很有用的信息!
zpppore + 1 很有用的信息!
hxl930303 + 1 赞一个

查看全部评分


上一篇:亚麻 OA2 - Work Simulation and Work styles Assessments
下一篇:Dropbox 店面
地里的匿名用户
匿名用户-A22  发表于 2021-10-11 10:37:17
本楼: 👍   100% (2)
 
 
0% (0)   👎
不揣冒昧,
part1:
public static String compress(String input) {
    StringBuilder r = new StringBuilder();
    // assume input is valid, else need validation in advance
    String[] majors = input.split("/");
    for (int i = 0; i < majors.length; i++) {
      String major = majors;
      String[] minors = major.split("\\.");
      for (int j = 0; j < minors.length; j++) {
        String minor = minors[j];
        r.append(minor.charAt(0));
        r.append(minor.length() - 2);
        r.append(minor.charAt(minor.length() - 1));
        if (j != minors.length - 1) r.append(".");
      }
      if (i != majors.length - 1) r.append("/");
    }
    return r.toString();
  }

  public static void main(String args[]) {

    System.out.println(
        compress("stripe.com/checkout/payments/customer.maria").equals("s4e.c1m/c6t/p6s/c6r.m3a"));
  }

补充内容 (2021-10-11 13:31 +8:00):
/*
  part 2
  Not clear what is the meaing of the `m`.
  Just assume `m` means at most keep m minors for each major,
  when there are more than `m` minors in a major,
  the first m-1 one are handled as usual,
  but left minors [mth,last] will be merged as the m-th one
   */
  public static String compress(String input, int m) {
    StringBuilder r = new StringBuilder();
    // assume input is valid, else need validation in advance
    String[] majors = input.split("/");
    for (int i = 0; i < majors.length; i++) {
      String major = majors;
      String[] minors = major.split("\\.");
      int j = 0;
      int presum = 0;
      for (; j < Math.min(m - 1, minors.length); j++) {
        String minor = minors[j];
        presum += minor.length();
        r.append(minor.charAt(0));
        r.append(minor.length() - 2);
        r.append(minor.charAt(minor.length() - 1));
        if (j != minors.length - 1) r.append(".");
      }
      if (j < minors.length) {
        r.append(major.charAt(presum));
        presum = 0;
        for (; j < minors.length; j++) presum += minors[j].length();
        r.append(presum - 2);
        r.append(major.charAt(major.length() - 1));
      }
      if (i != majors.length - 1) r.append("/");
    }
    return r.toString();
  }

  public static void main(String args[]) {
    System.out.println(
        compress("stripe.com/checkout/payments/customer.maria.bay.area.next.job", 3)
            .equals("s4e.c1m/c6t/p6s/c6r.m3a.a12b"));
  }
回复

使用道具 举报

本楼: 👍   100% (1)
 
 
0% (0)   👎
全局: 👍   95% (44)
 
 
4% (2)    👎
帮大家写了下,拿走不谢:
  1.    public static String compress(String input) {
  2.         int idx = 0;
  3.         StringBuilder sb = new StringBuilder();
  4.         while (true) {
  5.             int nextSlashIdx = input.indexOf("/", idx);
  6.             int nextDocIdx = input.indexOf(".", idx);
  7.             if (nextSlashIdx == -1 && nextDocIdx == -1) {
  8.                 sb.append(compressHelper(input, idx, input.length()));
  9.                 break;
  10.             }
  11.             int nextIdx;
  12.             char appendedChar;
  13.             if (nextSlashIdx == -1) {
  14.                 nextIdx = nextDocIdx;
  15.                 appendedChar = '.';
  16.             } else if (nextDocIdx == -1) {
  17.                 nextIdx = nextSlashIdx;
  18.                 appendedChar = '/';
  19.             } else {
  20.                 nextIdx = Math.min(nextSlashIdx, nextDocIdx);
  21.                 appendedChar = nextIdx == nextSlashIdx ? '/' : '.';
  22.             }
  23.             sb.append(compressHelper(input, idx, nextIdx));
  24.             sb.append(appendedChar);
  25.             idx = nextIdx + 1;
  26.         }
  27.         return sb.toString();
  28.     }
  29.    
  30.     private static StringBuilder compressHelper(String input, int i, int j) {
  31.         StringBuilder sb = new StringBuilder();
  32.         if (j < i + 3) {
  33.             sb.append(input.substring(i, j));
  34.         } else {
  35.             sb.append(input.charAt(i));
  36.             sb.append(j - i - 2);
  37.             sb.append(input.charAt(j - 1));
  38.         }
  39.         return sb;
  40.     }
  41.    
  42.     public static void main(String args[]) {
  43.       String result = compress("stripe.com/checkout/payments/customer.maria");

  44.       System.out.println("Result = " + result);
  45.     }
  46. }
复制代码
扫码关注一亩三分地求职与职场公众号
更多干货内容等你发现
回复

使用道具 举报

地里的匿名用户
匿名用户-E86  发表于 2021-9-24 07:45:02
本楼: 👍   0% (0)
 
 
0% (0)   👎
请问下这是DS的现场表演 不是SDE的对吧?
回复

使用道具 举报

 楼主| wangzhuyun32 2021-9-24 07:48:20 | 显示全部楼层 | 🔍试试Job多多
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   99% (197)
 
 
0% (1)    👎
匿名者 发表于 2021-9-23 16:45
请问下这是DS的现场表演 不是SDE的对吧?

是SDE
回复

使用道具 举报

本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   100% (18)
 
 
0% (0)    👎
老哥弱弱问一下,现场是vo的意思对吧。。
回复

使用道具 举报

地里的匿名用户
匿名用户-7BD  发表于 2021-9-24 09:04:42
本楼: 👍   0% (0)
 
 
0% (0)   👎
這是vo的哪一輪啊?
回复

使用道具 举报

地里的匿名用户
匿名用户-7BD  发表于 2021-9-24 09:08:31
本楼: 👍   0% (0)
 
 
0% (0)   👎
想问楼主有没有debug那轮资料?
谢谢
回复

使用道具 举报

 楼主| wangzhuyun32 2021-9-24 10:58:54 | 显示全部楼层 | 🔍试试Job多多
本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   99% (197)
 
 
0% (1)    👎
onsite 可以分成几次。今天就面了coding,过几天面剩下的,到时更新。
回复

使用道具 举报

本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   96% (57)
 
 
3% (2)    👎
感謝樓主 已加米 期待後續
回复

使用道具 举报

本楼: 👍   0% (0)
 
 
0% (0)   👎
全局: 👍   100% (4)
 
 
0% (0)    👎
哈喽问一下,compress的时候需要考虑重复的情况吗?比如stripe 和 sxxxxe都可以compress 成s4e,这时候需要一个变成比如st3e这样子吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表