給出一棵二叉樹(shù),返回其節(jié)點(diǎn)值的鋸齒形層次遍歷(先從左往右,下一層再?gòu)挠彝?層與層之間交替進(jìn)行)
在線做題地址→
樣例 1: 輸入:{1,2,3} 輸出:[[1],[3,2]] 解釋: 1 / \ 2 3 它將被序列化為 {1,2,3}
樣例 2: 輸入:{3,9,20,#,#,15,7} 輸出:[[3],[20,9],[15,7]] 解釋: 3 / \ 9 20 / \ 15 7 它將被序列化為 {3,9,20,#,#,15,7}
[題解]
算法:樹(shù)的層次遍歷
層次遍歷,可以運(yùn)用廣度遍歷的思想實(shí)現(xiàn)從上往下的逐層遍歷。從頭結(jié)點(diǎn)開(kāi)始逐層遍歷,開(kāi)辟一個(gè)新隊(duì)列,讓頭結(jié)點(diǎn)入隊(duì)并計(jì)算此時(shí)的長(zhǎng)度,每次都將當(dāng)前層的子節(jié)點(diǎn)全部壓入隊(duì)列,然后對(duì)下一層的節(jié)點(diǎn)進(jìn)行遍歷,再將下一層的子節(jié)點(diǎn)壓入隊(duì)列,不斷循環(huán),一直遍歷到底層,判斷的終止條件就是隊(duì)列不為空。 循環(huán)里面,隊(duì)列頭出隊(duì),判斷其是否有左右子結(jié)點(diǎn),如果有,則將此點(diǎn)的子節(jié)點(diǎn)入隊(duì),但此時(shí)還不需要更新隊(duì)列的長(zhǎng)度,當(dāng)前隊(duì)列的長(zhǎng)度是每層的長(zhǎng)度。當(dāng)這層的長(zhǎng)度減為 0 時(shí),就說(shuō)明這層的遍歷結(jié)束,開(kāi)始更新長(zhǎng)度為下一層的長(zhǎng)度。 出隊(duì)的元素的值按照一層層壓入結(jié)果數(shù)組 因?yàn)轭}目鋸齒形遍歷 我們用一個(gè) isforward 標(biāo)記當(dāng)前方向,每遍歷完一層,如果是反向的,則將這層的節(jié)點(diǎn)數(shù)組倒序,然后將這層的集合壓入結(jié)果
復(fù)雜度分析
時(shí)間復(fù)雜度 O(n)
n 為節(jié)點(diǎn)數(shù)量
空間復(fù)雜度 O(n)
存下所有點(diǎn)的信息 n 為節(jié)點(diǎn)數(shù)量 public class Solution { /** * @param root: A Tree * @return: A list of lists of integer include the zigzag level order traversal of its nodes' values. */ public List> zigzagLevelOrder(TreeNode root){ List> ans = new ArrayList>(); if (root == null) { return ans; } Queue q = new LinkedList(); //正反向標(biāo)志 boolean isForward = true; q.offer(root); while (!q.isEmpty()) { int size = q.size(); List subList = new ArrayList(); for (int i = 0 ; i < size ; i++) { TreeNode treeNode = q.poll(); subList.add(treeNode.val); if (treeNode.left != null) { q.offer(treeNode.left); } if (treeNode.right != null) { q.offer(treeNode.right); } } //根據(jù)標(biāo)志來(lái)確認(rèn)當(dāng)前層遍歷的方向 if (!isForward) { Collections.reverse(subList);//翻轉(zhuǎn) } ans.add(subList); //方向反轉(zhuǎn) isForward = !isForward; } return ans; } }
更多題解參見(jiàn)
這是一個(gè)祖瑪游戲。
一行球放在桌面上,球被涂上了紅( R )、黃( Y )、藍(lán)( B )、綠( G )和白( W )這么幾種顏色,同時(shí)你也擁有幾個(gè)球。
每一次,從你擁有的球當(dāng)中拿出一個(gè),插入到當(dāng)前行當(dāng)中(包括最左邊和最右邊)。然后,如果有三個(gè)或更多的同色球挨在一起,然后就消除這幾個(gè)球。一直這么做直到?jīng)]有更多的球可以消除。 找到最少的需要插入的球的數(shù)量,使得所有的球都可以被刪除。如果不能刪除所有的球,那么就返回-1 。 初始的行不會(huì)擁有三個(gè)及以上的連續(xù)的同色球。 行中的球的數(shù)量不會(huì)超過(guò) 20,用名為"borad"的輸入字符串表示。 你擁有的球不會(huì)超過(guò) 5 個(gè),用名為"hand"的輸入字符串表示。 輸入字符串都非空,而且僅包含字符 'R','Y','B','G','W'。
點(diǎn)這里可以在線做題
樣例 1: 輸入: "WRRBBW", "RB" 輸出: -1 解釋: WRRBBW -> WRR[R]BBW -> WBBW -> WBB[B]W -> WW
樣例 2: 輸入: "WWRRBBWW", "WRBRW" 輸出: 2 解釋: WWRRBBWW -> WWRR[R]BBWW -> WWBBWW -> WWBB[B]WW -> WWWW -> empty
樣例 3: 輸入:"G", "GGGGG" 輸出: 2 解釋: G -> G[G] -> GG[G] -> empty
樣例 4: 輸入: "RBYYBBRRB", "YRBGB" 輸出: 3 解釋: RBYYBBRRB -> RBYY[Y]BBRRB -> RBBBRRB -> RRRB -> B -> B[B] -> BB[B] -> empty
[題解]
考點(diǎn): 搜索 題解:基本思路就是搜索,c 數(shù)組統(tǒng)計(jì)自己各類(lèi)球的數(shù)量,對(duì) board 進(jìn)行遍歷,然后 j 保存一段的起點(diǎn),i 向后移動(dòng)至出現(xiàn)不同的球,然后對(duì)這段長(zhǎng)度判斷,根據(jù) inc 判斷需要幾個(gè)球插入,對(duì)應(yīng)的球數(shù)量減少,然后截取起點(diǎn)至 j 的區(qū)間和 i 至區(qū)間終點(diǎn)的兩段拼接,繼續(xù)搜索即可。 public class Solution { /** * @param board: the given board * @param hand: the balls in your hand * @return: the minimal balls you have to insert to remove all the balls on the table */ private int aux(String s, int[] c){ if("".equals(s)) { return 0; } int res = 2 * s.length() + 1; for(int i = 0; i < s.length();){ int j = i++; //j 保存起點(diǎn) while(i < s.length() && s.charAt(i) == s.charAt(j)) { i++; } int inc = 3 - i + j; //3-(i-j) 判斷消除需要幾個(gè)球 if(c[s.charAt(j)] >= inc){ //如果數(shù)量足夠 int used = inc <= 0 ? 0 : inc; //如果 inc<=0,不需要 c[s.charAt(j)] -= used; //用掉 s[j] int temp = aux(s.substring(0, j) + s.substring(i), c); //去除 j 至 i 的一段繼續(xù)搜索 if(temp >= 0) { res = Math.min(res, used + temp); } c[s.charAt(j)] += used; //搜索完成后補(bǔ)充球的數(shù)量 } } return res == 2 * s.length() + 1 ? -1 : res; } public int findMinStep(String board, String hand) { // Write your code here int[] c = new int[128]; for(char x : hand.toCharArray()){ c[x]++; } return aux(board, c); } }
更多題解參見(jiàn)
求逆波蘭表達(dá)式的值。 在逆波蘭表達(dá)法中,其有效的運(yùn)算符號(hào)包括 +, -, *, / 。每個(gè)運(yùn)算對(duì)象可以是整數(shù),也可以是另一個(gè)逆波蘭計(jì)數(shù)表達(dá)。
點(diǎn)此處在線做題
樣例 1: 輸入: ["2", "1", "+", "3", "*"] 輸出: 9 解釋: ["2", "1", "+", "3", "*"] -> (2 + 1) * 3 -> 9
樣例 2: 輸入: ["4", "13", "5", "/", "+"] 輸出: 6 解釋: ["4", "13", "5", "/", "+"] -> 4 + 13 / 5 -> 6
[題解]
逆波蘭表達(dá)式是更利于計(jì)算機(jī)運(yùn)算的表達(dá)式形式, 需要用到棧(先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu)). 遍歷表達(dá)式: 碰到數(shù)字則入棧 碰到運(yùn)算符則連續(xù)從棧中取出 2 個(gè)元素, 使用該運(yùn)算符運(yùn)算然后將結(jié)果入棧 最后棧中剩余一個(gè)數(shù)字, 就是結(jié)果. public class Solution { public int evalRPN(String[] tokens) { Stack s = new Stack(); String operators = "+-*/"; for (String token : tokens) { if (!operators.contains(token)) { s.push(Integer.valueOf(token)); continue; } int a = s.pop(); int b = s.pop(); if (token.equals("+")) { s.push(b + a); } else if(token.equals("-")) { s.push(b - a); } else if(token.equals("*")) { s.push(b * a); } else { s.push(b / a); } } return s.pop(); } }
更多題解參見(jiàn)
LintCode 想讓它最好的員工之一選擇在 N 個(gè)城市間旅行來(lái)收集算法問(wèn)題。但是只工作不玩耍,聰明的孩子也會(huì)變傻,你可以在某些特定的城市并且一個(gè)星期里去度假。你的工作是安排旅行,盡可能多的假期,但是有一些規(guī)則和限制你需要遵守。
規(guī)則和限制: 您只能在 1 個(gè)城市中旅行,由 0 到 N-1 的索引表示。一開(kāi)始,你周一在城市 0 。
這些城市都是通過(guò)航班連接起來(lái)的。這些航班被表示為 N*N 矩陣(非必要對(duì)稱(chēng)),稱(chēng)為代表航空公司從城市 i 到 j 城市狀態(tài)的 flights 矩陣。如果沒(méi)有從城市 i 到城市 j 的航班,flights[i][j] = 0;否則,flights[i][j]= 1 。還有,flights[i][i] = 0 。
你總共有 K 周(每周有 7 天)旅行。你只能每天最多乘坐一次航班,而且只能在每周一早上乘坐航班。由于飛行時(shí)間太短,我們不考慮飛行時(shí)間的影響。
對(duì)于每個(gè)城市,你只能在不同的星期里限制休假日,給定一個(gè)命名為 days 的 N*K 矩陣表示這種關(guān)系。對(duì)于 days[i][j]的值,它表示你可以在 j+1 周的城市 i 里休假的最長(zhǎng)天數(shù),你得到的是 flights 矩陣和 days 矩陣,你需要輸出你在 K 周期間可以獲得的最長(zhǎng)假期。 N 和 K 是正整數(shù),它們?cè)赱1, 100]的范圍內(nèi)。 在 flights 矩陣中,所有的值都是在[0, 1]范圍內(nèi)的整數(shù)。 在 days 矩陣中,所有的值都是范圍內(nèi)的整數(shù)[0, 7]。 你可以呆在一個(gè)超過(guò)假期天數(shù)的城市,但是你應(yīng)該多工作幾天,這不會(huì)算作休假日。 如果你從 A 市飛到 B 市,并在那天休假,那么假期的扣除將計(jì)入 B 城市的假期天數(shù)。 我們不考慮飛行時(shí)間對(duì)計(jì)算假期的影響。
→點(diǎn)擊此處在線做題
樣例 1: 輸入:flights = [[0,1,1],[1,0,1],[1,1,0]],days = [[1,3,1],[6,0,3],[3,3,3]] 輸出:12 解釋?zhuān)?Ans = 6 + 3 + 3 = 12. 最好的策略之一是: 第一周:周一從城市 0 飛往城市 1,休假 6 天,工作 1 天。 (雖然你從城市 0 開(kāi)始,但從周一開(kāi)始,我們也可以飛到其他城市去。) 第二周:周一從城市 1 飛到城市 2,休假 3 天,工作 4 天。 第三周:呆在城市 2,休假 3 天,工作 4 天。
樣例 2: 輸入:flights = [[0,0,0],[0,0,0],[0,0,0]],days = [[1,1,1],[7,7,7],[7,7,7]] 輸出:3 解釋?zhuān)?Ans = 1 + 1 + 1 = 3. 因?yàn)闆](méi)有航班可以讓你飛到另一個(gè)城市,所以你必須在城市里呆 3 個(gè)星期。 每個(gè)星期,你只有一天休假的時(shí)間和六天的工作。 所以假期的最大天數(shù)是 3
樣例 3: 輸入:flights = [[0,1,1],[1,0,1],[1,1,0]],days = [[7,0,0],[0,7,0],[0,0,7]] 輸出:21 解釋?zhuān)?Ans = 7 + 7 + 7 = 21. 最好的策略之一是: 第一周:呆在城市 0,玩 7 天。 第二周:周一從城市 0 飛到城市 1,然后休假 7 天。 第三周:周一從城市 1 飛到城市 2,然后休假 7 天。
[題解]
考點(diǎn):
dp
題解: dp[i]表示最后到達(dá) i 城市的最長(zhǎng)休假時(shí)間。先枚舉周數(shù),然后枚舉終點(diǎn),然后是起點(diǎn),判斷是否前往(temp[j] = Math.max(temp[j], dp[k] + days[j][i]);),即是否進(jìn)行轉(zhuǎn)移。每周更新 dp 數(shù)組,最后從 dp 數(shù)組選擇最大值即可。 public class Solution { /** * @param flights: the airline status from the city i to the city j * @param days: days[i][j] represents the maximum days you could take vacation in the city i in the week j * @return: the maximum vacation days you could take during K weeks */ public int maxVacationDays(int[][] flights, int[][] days) { // Write your code here int N = flights.length; int K = days[0].length; int[] dp = new int[N]; Arrays.fill(dp, Integer.MIN_VALUE); dp[0] = 0; for (int i = 0; i < K; i++) { //逐漸擴(kuò)大枚舉周 int[] temp = new int[N]; Arrays.fill(temp, Integer.MIN_VALUE); for (int j = 0; j < N; j++) { //枚舉終點(diǎn) for(int k = 0; k < N; k++) { //枚舉起點(diǎn) if (j == k || flights[k][j] == 1) { //如果城市 k 到城市 j 存在航班 temp[j] = Math.max(temp[j], dp[k] + days[j][i]); //則再對(duì)當(dāng)前答案進(jìn)行選擇,即是否從 k 前往 j } } } dp = temp; } int ans = 0; for(int i = 0; i < N; i++){ //最后對(duì) dp 數(shù)組篩選最大值即可 ans = Math.max(ans, dp[i]); } return ans; } }
查看更多題解地址
格雷編碼是一個(gè)二進(jìn)制數(shù)字系統(tǒng),在該系統(tǒng)中,兩個(gè)連續(xù)的數(shù)值僅有一個(gè)二進(jìn)制的差異。 給定一個(gè)非負(fù)整數(shù) n,表示該代碼中所有二進(jìn)制的總數(shù),請(qǐng)找出其格雷編碼順序。一個(gè)格雷編碼順序必須以 0 開(kāi)始,并覆蓋所有的 2n 個(gè)整數(shù)。 對(duì)于給定的 n,其格雷編碼順序并不唯一。 當(dāng) n = 2 時(shí),根據(jù)上面的定義,[0,1,3,2] 和 [0,2,3,1] 都是有效的格雷編碼順序。
點(diǎn)這里在線做題
樣例 1: 輸入: 1 輸出: [0, 1]
樣例 2: 輸入: 2 輸出: [0, 1, 3, 2] 解釋: 0 - 00 1 - 01 3 - 11 2 - 10
最簡(jiǎn)單的做法是利用位運(yùn)算. 在《計(jì)算機(jī)組成與設(shè)計(jì)》一書(shū)上有介紹. 一個(gè)數(shù)字對(duì)應(yīng)的格雷編碼的計(jì)算方式是: 將其二進(jìn)制第一位(從高位數(shù))與 0 異或, 得到的結(jié)果為格雷碼的第一位 之后依次將原數(shù)的第 i 位與生成的格雷碼第 i-1 位做異或運(yùn)算, 即可得到格雷碼的第 i 位. public class Solution { public ArrayList grayCode(int n) { ArrayList result = new ArrayList(); for (int i = 0; i < (1 << n); i++) result.add(i ^ (i >> 1)); return result; } } ////////// 遞歸版本 public class Solution { public ArrayList grayCode(int n) { ArrayList result = new ArrayList(); if (n <= 1) { for (int i = 0; i <= n; i++){ result.add(i); } return result; } result = grayCode(n - 1); ArrayList r1 = reverse(result); int x = 1 << (n-1); for (int i = 0; i < r1.size(); i++) { r1.set(i, r1.get(i) + x); } result.addAll(r1); return result; } public ArrayList reverse(ArrayList r) { ArrayList rev = new ArrayList(); for (int i = r.size() - 1; i >= 0; i--) { rev.add(r.get(i)); } return rev; } }
點(diǎn)這里查看更多題解
歡迎評(píng)論區(qū)討論
當(dāng)以下條件都滿足時(shí),一個(gè)密碼被視為是強(qiáng)密碼: 至少包含 6 個(gè)字符,但不超過(guò) 20 個(gè)字符。 至少包含一個(gè)小寫(xiě)字母,一個(gè)大寫(xiě)字母,和一個(gè)數(shù)字。 不能包含三個(gè)連續(xù)的重復(fù)字符("...aaa..."是弱密碼,但"...aa...a..."是強(qiáng)密碼,假設(shè)它們的其他條件都滿足了)。 寫(xiě)一個(gè)函數(shù) strongPasswordChecker(s),它將一個(gè)字符串 s 作為輸入,并且返回將其轉(zhuǎn)換成強(qiáng)密碼需要的最少改變次數(shù)。如果 s 已經(jīng)是一個(gè)強(qiáng)密碼了,返回 0 。 插入、刪除或者替換任意一個(gè)字符都視為一次改變。
點(diǎn)這里在線做題
樣例 1: 輸入:"aaa123" 輸出:1 解釋?zhuān)?aaa123"->"aaA123"
樣例 2: 輸入:"a" 輸出:5 解釋?zhuān)?a"->"aa"->"aaA"->"aaA1"->"aaA12"->"aaA123"
[題解]
考點(diǎn): 思維
題解:本題根據(jù)要求最小的改變次數(shù),確定修改策略即可。
變?yōu)閺?qiáng)密碼需要解決三種問(wèn)題: 長(zhǎng)度小于 6 時(shí)需要插入字符,長(zhǎng)度大于 20 時(shí)需要?jiǎng)h除字符 缺失字符或數(shù)字,此時(shí)可以通過(guò)插入或者替換字符解決 出現(xiàn)三個(gè)及以上重復(fù)字符,利用置換解決該問(wèn)題會(huì)更好,可以同時(shí)做到解決情況二和情況三。
接下來(lái),按照長(zhǎng)度進(jìn)行討論。 當(dāng)長(zhǎng)度小于 6 時(shí),盡量采用插入操作,既可以增加長(zhǎng)度也可以避免重復(fù)字符連續(xù)。 當(dāng)長(zhǎng)度大于等于 6 時(shí),對(duì)于重復(fù)字符個(gè)數(shù) k 大于等于 3 的情況,先將其刪除到最近的(3m+2)個(gè),那么如果 k 正好被 3 整除,那么我們直接變?yōu)?k-1,如果 k%3=1,那么變?yōu)?k-2 。這樣做的好處是 3m+2 個(gè)重復(fù)字符可以用替換 m 個(gè)字符來(lái)去除重復(fù),然后遍歷一次,進(jìn)行刪除和替換,可以直接刪除 3m 個(gè),最少刪除操作。 public class Solution { /** * @param s: a string * @return: return an integer */ public int strongPasswordChecker(String s) { // write your code here int res = 0, n = s.length(), lower = 1, upper = 1, digit = 1; int [] v = new int [n]; for (int i = 0; i < n;) { //遍歷是否存在缺失字符種類(lèi) if (s.charAt(i) >= 'a' && s.charAt(i) <= 'z') { lower = 0; } if (s.charAt(i) >= 'A' && s.charAt(i) <= 'Z') { upper = 0; } if (s.charAt(i) >= '0' && s.charAt(i) <= '9') { digit = 0; } int j = i; while (i < n && s.charAt(i) == s.charAt(j)) { ++i; } v[j] = i - j; //標(biāo)記 j 位置開(kāi)始連續(xù)重復(fù)字符的數(shù)量 } int missing = (lower + upper + digit); //缺失的字符種類(lèi)數(shù) if (n < 6) { int diff = 6 - n; //缺失的長(zhǎng)度 res += diff + Math.max(0, missing - diff); //缺失長(zhǎng)度加上 missing - diff 差值(因?yàn)樵黾拥淖址灰欢ㄑa(bǔ)全字符種類(lèi),替換) } else { int over = Math.max(n - 20, 0), left = 0; //超出長(zhǎng)度 res += over; for (int k = 1; k < 3; ++k) { //如果重復(fù)數(shù)量 k%3==0,-1 達(dá)到 3m+2 。如果 k%3==1,-2 達(dá)到 3m+2 for (int i = 0; i < n && over > 0; ++i) { if (v[i] < 3 || v[i] % 3 != (k - 1)) { continue; } v[i] -= k; over -=k; //刪除字符 } } for (int i = 0; i < n; ++i) { if (v[i] >= 3 && over > 0) { int need = v[i] - 2; //通過(guò)-2 得到 3m v[i] -= over; over -= need; //直接選擇刪除 3m 個(gè) } if (v[i] >= 3) { //如果 v[i]>=3 那么需要進(jìn)行替換操作 left += v[i] / 3; } } res += Math.max(missing, left); //每次除以 3 即為替換的字符個(gè)數(shù) } return res; } }
更多題解戳這里
給定一個(gè)長(zhǎng)度為 n 的數(shù)組 a,它有 n(n+1)/2??個(gè)子數(shù)組。請(qǐng)計(jì)算這些子數(shù)組的和,然后按照升序排列,并返回排序后第 k 個(gè)數(shù)。 1≤n≤10?^5 1≤a?i≤10^?9 1≤k≤?n(n+1)/2
→在線做題地址
Example1 Input: [2,3,1,4] 6 Output:5 Explanation: 我們可以得到所有子數(shù)組的和是 [1,2,3,4,4(3 + 1), 5(1 + 4), 5(2 + 3), 6(2 + 3 + 1), 8(3 + 1 + 4), 10(2 + 3 + 1 + 4)]。其中第六個(gè)是 5 。
題解
算法
二分+two pointer
算法分析
我們可以看到,題目需要求和第 k k 大的子區(qū)間,而我們的區(qū)間總個(gè)數(shù)共有 n(n+1)/2 個(gè),當(dāng) n 為 10^5??時(shí)這個(gè)數(shù)高達(dá) 10^10 級(jí)別。我們顯然不能暴力的枚舉每一個(gè)區(qū)間和然后排序。
算法思路
我們注意到,所有數(shù)字的和不超過(guò) 10^14,這個(gè)范圍可以讓我們想到使用二分最終的答案進(jìn)行求解。 二分要求解的問(wèn)題是:對(duì)于給定的和 x,求有多少個(gè)區(qū)間的和小于 x,小于等于 x 。這需要我們?cè)?O(n)的時(shí)間復(fù)雜度內(nèi)進(jìn)行求解。由于數(shù)組內(nèi)所有數(shù)都是正數(shù),我們自然的可以想到同向雙指針求解。當(dāng)當(dāng)前區(qū)間的和大于 k,就移動(dòng)左指針,否則移動(dòng)右指針。
時(shí)間復(fù)雜度
O(nlog(n)) public class Solution { /** * @param a: an array * @param k: the kth * @return: return the kth subarray */ private int check(long x, int[] a, long k) { long tmp1 = 0, tmp2 = 0, now = a[0]; int l = -1, r = 0, n = a.length; long all = (long)n * (n + 1) / 2; while (l <= r && r < n) { if (now >= x) { if (now == x) { tmp2++; } else { tmp1++; } tmp1 += n - r - 1; l++; now -= a[l]; } else {r++; if (r < n) now += a[r];} } if (all - tmp1 - tmp2 < k && all - tmp1 >= k) return 0; if (all - tmp1 - tmp2 >= k) return 1; else return -1; } public long thekthSubarray(int[] a, long k) { // wrrite your code here int n = a.length; long sum = 0; for (int i = 0; i < n; i++) { sum += a[i]; } long l = 1, r = sum; while (l <= r) { long mid = (l + r) / 2; int flag = check(mid, a, k); if (flag == 0) { return mid; } if (flag == 1) { r = mid - 1; } else { l = mid + 1; } } return -1; } }
點(diǎn)這里可以查看更多題解
分享一個(gè)暴力解法
n 個(gè)人按順序圍成一圈(編號(hào)為 1~n),從第 1 個(gè)人從 1 開(kāi)始報(bào)數(shù),報(bào)到 k 的人出列,相鄰的下個(gè)人重新從 1 開(kāi)始報(bào)數(shù),報(bào)到 k 的人出列,重復(fù)這個(gè)過(guò)程,直到隊(duì)伍中只有 1 個(gè)人為止,這就是約瑟夫問(wèn)題?,F(xiàn)在給定 n 和 k,你需要返回最后剩下的那個(gè)人的編號(hào)。 1<=n<=1000, 1<=k<=100
→戳此在線評(píng)測(cè)
樣例 1 輸入: n = 5, k = 3 輸出: 4 解釋: 求解過(guò)程: 原隊(duì)列 :1 2 3 4 5 第一輪:1 2 4 5 其中 3 出列 第二輪:2 4 5 其中 1 出列 第三輪:2 4 其中 5 出列 第四輪:4 其中 2 出列
樣例 2 輸入: n = 5, m = 1 輸出: 5 解釋: 第一輪:2 3 4 5, 其中 1 出列 第二輪:3 4 5, 其中 2 出列 第三輪:4 5, 其中 3 出列 第四輪:5, 其中 4 出列
[題解] 暴力解決。建立一個(gè)鏈表,并在每次迭代中刪除一個(gè)節(jié)點(diǎn)。O(n)時(shí)間復(fù)雜度。 public class Solution { /** * @param n: an integer * @param k: an integer * @return: the last person's number */ public int josephProblem(int n, int k) { List list = new LinkedList<>(); for (int i = 1; i <= n; i++) { list.add(i); } int i = 0; while (list.size() != 1) { i = (i + k - 1) % list.size(); list.remove(i); } return list.get(0); } }
點(diǎn)擊解鎖更多題解
寫(xiě)一個(gè)程序來(lái)找第 n 個(gè)超級(jí)丑數(shù)。 超級(jí)丑數(shù)是所有的質(zhì)數(shù)因子都在給定的的質(zhì)數(shù)集合內(nèi)的正整數(shù)。 比如給定質(zhì)數(shù)集合 [2, 7, 13, 19], 那么 [1, 2, 4, 7, 8, 13, 14, 16, 19, 26, 28, 32] 是前 12 個(gè)超級(jí)丑數(shù)。 1 永遠(yuǎn)都是超級(jí)丑數(shù)。 0 < k ≤ 100, 0 < n ≤ 10^6, 0 < primes[i] < 1000 k 是丑數(shù)集合的長(zhǎng)度
在線評(píng)測(cè)地址
樣例 1: 輸入: n = 6, [2,7,13,19] 輸出: 13
樣例 2: 輸入: n = 11, [2,3,5] 輸出: 15
[題解]
做法 1:
使用小根堆, 初始將 1 放入堆, 循環(huán) n-1 次, 每次取出堆頂, 然后將該值與素?cái)?shù)列表每個(gè)數(shù)的乘積再次放入堆. 注意可能會(huì)有數(shù)重復(fù)入堆, 所以還需要額外的數(shù)據(jù)結(jié)構(gòu)記錄一個(gè)數(shù)是否出現(xiàn)過(guò), 把重復(fù)的數(shù)排除, 以保證取出的堆頂是從小到大的超級(jí)丑數(shù). n-1 次循環(huán)之后, 此時(shí)的堆頂即是第 n 個(gè)丑數(shù). 時(shí)間復(fù)雜度 O(nklogn)
做法 2:
依次求出前 n 個(gè)超級(jí)丑數(shù). 定義 times[i]表示當(dāng)前的超級(jí)丑數(shù)的質(zhì)因數(shù)中, 列表中第 i 個(gè)素?cái)?shù)的次數(shù). uglys[i]表示第 i+1 個(gè)素?cái)?shù). 初始 times[i] = 0, uglys[0] = 1, 然后依次由 uglys[0] ~ uglys[i] 求出 uglys[i+1]: 枚舉, 求出 uglys[times[j]] * prime[j] 的最小值, 即是 uglys[i+1] 更新對(duì)應(yīng)的 times[j], 即 若 uglys[times[j]] * prime[j] == uglys[i+1], times[j]++ 時(shí)間復(fù)雜度 O(nk) public class Solution { /** * @param n a positive integer * @param primes the given prime list * @return the nth super ugly number */ public int nthSuperUglyNumber(int n, int[] primes) { int[] times = new int[primes.length]; int[] uglys = new int[n]; uglys[0] = 1; for (int i = 1; i < n; i++) { uglys[i] = Integer.MAX_VALUE; for (int j = 0; j < primes.length; j++) { uglys[i] = Math.min(uglys[i], primes[j] * uglys[times[j]]); } for (int j = 0; j < times.length; j++) { if (uglys[times[j]] * primes[j] == uglys[i]) { times[j]++; } } } return uglys[n - 1]; } }
更多題解參見(jiàn)
你想要用小寫(xiě)字母組成一個(gè)目標(biāo)字符串? target 。
開(kāi)始的時(shí)候,序列由? target.length 個(gè)? '?' ?記號(hào)組成。而你有一個(gè)小寫(xiě)字母印章? stamp 。
在每個(gè)回合,你可以將印章放在序列上,并將序列中的每個(gè)字母替換為印章上的相應(yīng)字母。你最多可以進(jìn)行? 10 * target.length 個(gè)回合。
舉個(gè)例子,如果初始序列為 "?????",而你的印章? stamp ?是? "abc" ,那么在第一回合,你可以得到 "abc??"、"?abc?"、"??abc"。(請(qǐng)注意,印章必須完全包含在序列的邊界內(nèi)才能蓋下去。)
如果可以印出序列,那么返回一個(gè)數(shù)組,該數(shù)組由每個(gè)回合中被印下的最左邊字母的索引組成。如果不能印出序列,就返回一個(gè)空數(shù)組。
例如,如果序列是 "ababc",印章是 "abc" ,那么我們就可以返回與操作 "?????" -> "abc??" -> "ababc" 相對(duì)應(yīng)的答案? [0, 2] ;
另外,如果可以印出序列,那么需要保證可以在? 10 * target.length ?個(gè)回合內(nèi)完成。任何超過(guò)此數(shù)字的答案將不被接受。
1.1 <= stamp.length <= target.length <= 1000
2.stamp 和 target 僅包含小寫(xiě)字母。
在線評(píng)測(cè)地址: https://www.lintcode.com/problem/median-of-two-sorted-arrays/?utm_source=sc-v2ex-fks
樣例 1: 輸入:stamp = "abc", target = "ababc" 輸出:[0,2] 解釋?zhuān)??????"->"abc??"->"ababc"
樣例 2: 輸入:stamp = "abca", target = "aabcaca" 輸出:[3,0,1] 解釋?zhuān)????????"->"???abca"->"abcabca"->"aabcaca"
[題解]
考點(diǎn): 貪心 字符串
題解: 考慮下面的樣例 Stamp = "abc", Target = "ababcbc" Target = ab???bc Target = ab????? Target = ??????? 逆向做法,可以在 target 中找到 stamp 的子串。然后用特殊符號(hào)覆蓋。我們逆向想一下,因?yàn)槲液笊w的章會(huì)覆蓋掉前面的章,那么我前面的章無(wú)論什么時(shí)候蓋對(duì)后蓋的章都是沒(méi)有影響的,所以我先找到最后一次章蓋的位置,即在 target 序列中找 stamp,記下蓋的序列的最左邊位置,然后把相應(yīng)位置全部替換為‘?’,相當(dāng)于就是例 2 中的 "a????ca",然后把這個(gè)?看成一個(gè)萬(wàn)能的字母,它可以為任意的,再找 stamp,這樣,一直到最后全部變成 target,這些序列就是從最后一次到第一次蓋章的位置,然后倒轉(zhuǎn)一下就是題目所要求的。需要注意的是,在寫(xiě)代碼的時(shí)候,一定要注意需要判斷匹配的字符串可能全是?,所以需要防止這種情況產(chǎn)生。 class Solution { public int[] movesToStamp(String stamp, String target) { char[] S = stamp.toCharArray(); char[] T = target.toCharArray(); List res = new ArrayList<>(); boolean[] visited = new boolean[T.length]; int stars = 0; while (stars < T.length) { boolean doneReplace = false; for (int i = 0; i <= T.length - S.length; i++) { if (!visited[i] && canReplace(T, i, S)) { stars = doReplace(T, i, S.length, stars); doneReplace = true; visited[i] = true; res.add(i); if (stars == T.length) { break; } } } if (!doneReplace) { return new int[0]; } } int[] resArray = new int[res.size()]; for (int i = 0; i < res.size(); i++) { resArray[i] = res.get(res.size() - i - 1); } return resArray; } private boolean canReplace(char[] T, int p, char[] S) { //canReplace(char[] T, int p, char[] S) is used to check if any substring from Target is existing to be replaced with *. for (int i = 0; i < S.length; i++) { if (T[i + p] != '*' && T[i + p] != S[i]) { return false; } } return true; } private int doReplace(char[] T, int p, int len, int count) { //doReplace(char[] T, int p, int len, int count) is used to replace the substring with * and return the total number of * we have now. for (int i = 0; i < len; i++) { if (T[i + p] != '*') { T[i + p] = '*'; count++; } } return count; } }
現(xiàn)在給你兩個(gè)長(zhǎng)度均為 N 的整數(shù)數(shù)組 A 和 B 。
當(dāng)(A[0]+...A[K-1]),(A[K]+...+A[N-1]),(B[0]+...+B[K-1]) 和 (B[K]+...+B[N-1])四個(gè)和值大小相等時(shí),稱(chēng)索引 K 是一個(gè)公平索引。也就是說(shuō),索引 K 可以使得 A,B 兩個(gè)數(shù)組被分成兩個(gè)非空數(shù)組,這四個(gè)子數(shù)組的和值相等。
例如,數(shù)組 A = [4,-1,0,3],B = [-2,5,0,3],那么索引 K = 2 是公平的,子數(shù)組的和相等:4+(-1) = 3; 0+3 = 3; -2 + 5 = 3 and 0 + 3 = 3 。
現(xiàn)在請(qǐng)你計(jì)算公平索引的個(gè)數(shù)。 2<=N<=100000 -1000000000<=a[i],b[i]<=1000000000 (0<=i在線評(píng)測(cè)地址: https://www.lintcode.com/problem/fair-indexes/?utm_source=sc-v2ex-fks
樣例 1: 輸入: [4,-1,0,3] [-2,5,0,3] 輸出: 2
樣例 2: 輸入: [2,-2,-3,3] [0,0,4,-4] 輸出: 1
樣例 3: 輸入: [4,-1,0,3] [-2,6,0,4] 輸出: 0
樣例 4: 輸入: [1,4,2,-2,5] [7,-2,-2,2,5] 輸出: 2
[題解]
先判斷兩個(gè)數(shù)組總和是否相等,若不相等,則直接返回 0 ; 然后掃一遍數(shù)組,用 pre_a 和 pre_b 分別記錄兩個(gè)數(shù)組的前綴和,前綴和相等時(shí) ans++即可。
需要注意的是,數(shù)組中數(shù)的值在-1e9,1e9 范圍內(nèi),數(shù)組長(zhǎng)度 0,1e5,所以中間和會(huì)超出 int 范圍,需要用 long ;
還有被分成的兩個(gè)數(shù)組不能為空,所以前綴和 p0 和 pn-1 是不考慮的; public class Solution { /** * @param A: an array of integers * @param B: an array of integers * @return: return a integer indicating the number of fair indexes. */ public int CountIndexes(List A, List B) { int ans = 0; long sum_a = 0, sum_b = 0, pre_a = 0, pre_b = 0; for(int i = 0; i < A.size(); i++) { sum_a += A.get(i); sum_b += B.get(i); } if(sum_a != sum_b)return 0; for(int i = 0; i < A.size() - 1; i++) { pre_a += A.get(i); pre_b += B.get(i); if(pre_a==pre_b) ans++; } return ans; } }
更多語(yǔ)言代碼參見(jiàn): https://www.jiuzhang.com/solution/fair-indexes/?utm_source=sc-v2ex-fks
已有方法 rand7 ?可生成 1 到 7 范圍內(nèi)的均勻隨機(jī)整數(shù),試寫(xiě)一個(gè)方法? rand10 生成 1 到 10 范圍內(nèi)的均勻隨機(jī)整數(shù)。
不要使用系統(tǒng)的 Math.random() 方法 rand7 ?已定義。 傳入?yún)?shù):? n ?表示? rand10 ?的調(diào)用次數(shù)。
在線評(píng)測(cè)地址: LintCode 領(lǐng)扣
樣例 1: 輸入:1 輸出:[7]
樣例 2: 輸入:2 輸出:[8,4]
樣例 3: 輸入:3 輸出:[8,1,10]
[題解]
考點(diǎn): 隨機(jī)數(shù)
題解: [1,7] 的隨機(jī)數(shù), 減一-> [0,6] 的隨機(jī)數(shù),乘以 7 -> {0,7,14,21,28,35,42} 中的隨機(jī)數(shù) [1,7]的隨機(jī)數(shù) 1+2 是[1,49]的隨機(jī)數(shù),且均勻生成 -> [0,48]的隨機(jī)數(shù) 取出[0,39]區(qū)間 取到的概率是 1/49 除以 4-> [0,9]的隨機(jī)數(shù) 加一->[1,10]的隨機(jī)數(shù) public class Solution extends SolBase{ public int rand10() { while(true){ int rand49 = (rand7() - 1) * 7 + rand7() - 1; if(rand49 <= 39) { return rand49 / 4 + 1; } } } }
更多語(yǔ)言代碼參見(jiàn): 九章算法
最近找了一家淘寶店定制了一些貼紙,不過(guò)和原圖比( PS 里用 CMYK 模式)顏色會(huì)暗很多。
店家說(shuō)印刷就是這樣的,也沒(méi)有更貴的更好的了。
這方面不太懂,有行家介紹下或者推薦下更優(yōu)方案嗎。
主要是之前買(mǎi)過(guò)這種貼紙(比如程序員各種 LOGO 的,各種大廠品牌的貼紙,那個(gè)顏色比這個(gè)鮮艷多了),不知是我需要再調(diào)節(jié)下亮度?還是其他呢
Chrome 插件英雄榜第 57 期: Photoshop 無(wú)法打開(kāi) WebP 怎么辦? 借助 Chrome 插件(擴(kuò)展程序)將 WebP 圖片保存為 png, 借助 XnConvert 將 png 批量轉(zhuǎn)換為 webp;
Chrome 插件英雄榜開(kāi)源地址(暗示 star??): https://zhaoolee.com/ChromeAppHeroes/page/057_webp_save_as_png.html
一妹子的 macbook air 系統(tǒng)崩潰。重啟打開(kāi) psd 損壞,也沒(méi)有自動(dòng)保存文件。 我找了下,也很崩潰。 請(qǐng)問(wèn) V 友都有哪些修復(fù)工具介紹下呢。
兼容性更新,不需要 AHK 或其他輔助軟件了,Word 也不用開(kāi)著了。
支持 Mac/Windows。
https://github.com/alicewish/AutoLettering
希望 Adobe 好好寫(xiě)文檔,找個(gè)功能千辛萬(wàn)苦還找不著。
需要合成一張備案的幕布照,自己水平太低,弄了一下連初審都沒(méi)過(guò)……
沒(méi)有別的原因,實(shí)在不想照這種類(lèi)似犯罪檔案的照片,有失尊嚴(yán)。
先付訂金 150,過(guò)審再付 150。聯(lián)系方式:qq 32402506
今天遇到個(gè)親戚,問(wèn)我會(huì)不會(huì) PS,不用想,先回答不會(huì)。
然后一問(wèn),原來(lái)是想把淘寶送的刮刮卡 P 個(gè)特等獎(jiǎng)
還遇到過(guò): 高中朋友想把別人的錄取通知書(shū)的名字 P 成她 同學(xué)評(píng)獎(jiǎng)學(xué)金,讓幫忙隨便 P 個(gè)獲獎(jiǎng)證書(shū)的
雖然在學(xué)校 PS 選修課學(xué)的還不錯(cuò),但是遇到以上這種,真的感覺(jué)不會(huì),P 的我自己都不滿意
P 成下面這樣我都感覺(jué)已經(jīng)盡力了,還是一眼看得出來(lái)
處理幾千張圖片(全都 1M 以上),每張圖片裁剪 200x200 像素,每張圖片裁剪的位置可能不一樣,用 ps 的自動(dòng)方法不太完美,有其他方法嗎?一張張效率又太低,最好是一次打開(kāi) 100 張,然后設(shè)置 200x200 的固定裁剪大小,在每張圖需要裁剪的位置滑動(dòng)一下,就能裁剪成 200x200 像素
有時(shí)候在酷安上看到很漂亮的 app 圖標(biāo)包可以應(yīng)用在 nova 等啟動(dòng)器上,圖標(biāo)作者是用什么做的?
剛剛發(fā)現(xiàn) V2EX WorkSpace 的背景圖非常的好看,不知道這種粗糙的效果怎樣在 Photoshop 或者 GIMP 中實(shí)現(xiàn),特來(lái)請(qǐng)教一下。 就是這張圖
因作業(yè)需求,需要給一堆尺寸不一的圖片的同一個(gè)位置建立一個(gè)選區(qū)比如在每個(gè)圖片的左下角建立一個(gè) 10px *. 10px 的方形選區(qū) 實(shí)際選區(qū)比較復(fù)雜,在實(shí)際操作中是從別一個(gè)文檔中拖到工作文檔中的,而這個(gè)操作用動(dòng)作卻不行做批量卻不行
有時(shí)候在 Photoshop 里,對(duì) 圖像窗口 里用 拾色器(前景色) 來(lái)取色,把復(fù)制的 HTML 顏色代碼用到 css 里,會(huì)發(fā)現(xiàn)在瀏覽器上看到的顏色會(huì)偏深色,而且這個(gè)問(wèn)題我遇到很多次了,特別是 被取色的圖層 被設(shè)置過(guò)混合選項(xiàng)之后。
那么有什么辦法能去獲取 圖像窗口 里實(shí)際看到的顏色值呢?
https://helpx.adobe.com/creative-cloud/help/sync-settings.html 似乎曾經(jīng)歷史上有過(guò)這個(gè)功能,但是在 2015 年的某個(gè)更新的時(shí)候去掉了。
今天切割圖片后想儲(chǔ)存為 web 所用格式,結(jié)果一直彈窗出儲(chǔ)存為 web 所用格式錯(cuò)誤, google 了半天沒(méi)有找到答案,有哪位大神指導(dǎo)一二,謝謝了。
在使用 Xperia 1 II 一個(gè)多月后,慣例交作業(yè) XD越來(lái)越忙,這次還沒(méi)來(lái)得及拍些實(shí)機(jī)照片什么的,主要是文字描述。相機(jī)有一些樣張但沒(méi)特別適合放出來(lái)的。 排版原因這里就只放鏈接。 純主觀評(píng)價(jià),目標(biāo)讀者是索粉,里面應(yīng)該有一些其他地方不常見(jiàn)的細(xì)節(jié)說(shuō)明。當(dāng)然如果不同意見(jiàn)依然歡迎拍磚。 如果有事實(shí)性錯(cuò)誤或錯(cuò)別字也敬請(qǐng)指正。 http://leybreeze.com/blog/?p=3797
買(mǎi)來(lái)電視后連鍵盤(pán)和自帶遙控器沒(méi)問(wèn)題,但是其他設(shè)備一概搜不到,店家讓我恢復(fù)出廠設(shè)置或者買(mǎi)盒子,我覺(jué)得可能不是這個(gè)問(wèn)題,就抱著試一試的心態(tài)打了索尼客服,客服說(shuō)這個(gè)電視藍(lán)牙只支持鼠標(biāo)鍵盤(pán) PS4 手柄的添加,耳機(jī)只能使用有線連接。有用這款電視的么?店家一再告知索尼的軟件是所有電視里最垃圾的,但是我反而覺(jué)得挺好,關(guān)機(jī)再開(kāi)能直接恢復(fù)之前看的內(nèi)容,沒(méi)有廣告很干凈,要是沒(méi)閹割 AirPlay 就好了。
攝影 /vlog 小白,就是想出去玩或者平時(shí)在家想錄 /拍點(diǎn)東西的時(shí)候用用,看網(wǎng)上評(píng)測(cè)好像還不錯(cuò),加上大小很小,所以有點(diǎn)種草,問(wèn)問(wèn)大家的看法。有以下幾個(gè)問(wèn)題:1 、傳說(shuō)中的 [ Sony 第一代產(chǎn)品不要買(mǎi)] 在這款機(jī)器身上也適用嗎?是的話,坑在哪里呢? 2 、Sony zv-1 主打宣傳標(biāo)語(yǔ)是“Vlog 神器”,那么他的拍照能力如何?因?yàn)閷?duì)我個(gè)人而言,照片有時(shí)候比視頻更能表達(dá)自己想表達(dá)的東西(主要想跟女票拍點(diǎn)奇奇怪怪的照片)。那么對(duì)比 [正常的拍照相機(jī)如單反等] 的話,zv-1 大概是什么水平呢(如能媲美哪些型號(hào))?
65 寸 8500f,買(mǎi)了剛好一年,前陣子拿花盆的時(shí)候手一抖,磕到了左下角,出現(xiàn)了一根手指大小的顯示異常的范圍,找了維修人員過(guò)來(lái)看,只能換屏,價(jià)格 3900,內(nèi)心一萬(wàn)頭草泥馬奔騰而過(guò),去年買(mǎi)的時(shí)候價(jià)格是 6800,現(xiàn)在的情況是,異常范圍不大,不太影響正常使用,我自己考慮了以下幾個(gè)方案,各位 v 友看看哪個(gè)比較合理。
1 、直接官方售后更換屏幕,價(jià)格 3900 。優(yōu)點(diǎn):質(zhì)量有保證,缺點(diǎn):價(jià)格高。
2 、淘寶第三方更換,價(jià)格 2450 。優(yōu)缺點(diǎn)和官方相反。
3 、先堅(jiān)持著再用用,畢竟目前不是很影響使用,等到了不行了再換屏。
4 、閑魚(yú)二手賣(mài)掉,等 618 活動(dòng)買(mǎi)個(gè)新的。
這是離遠(yuǎn)看的效果:
http://www.v2ex.com/i/j64jVUIa.jpeg
近距離:
http://www.v2ex.com/i/98v81n70.jpeg
黑色背景下幾乎看不出,但是我估計(jì)漏液情況會(huì)隨著時(shí)間越來(lái)越嚴(yán)重。
如題,錢(qián)包問(wèn)題還是沒(méi)辦法考慮 9000 系列。客廳寬度 4.2m ,平時(shí)家人看劇偶爾看看電影,自己打打 ps4 pro 、switch,其實(shí)也有考慮 steam 串流 那么問(wèn)題來(lái)了,那種性?xún)r(jià)比高點(diǎn)。目前打聽(tīng)到的 85x8000h 價(jià)格 16199
LEGO 列表 by KnewOne 用戶(hù) Syn
評(píng)測(cè): LEGO 樂(lè)高 樂(lè)高機(jī)械組 挖掘機(jī) 42006
LEGO Volvo L350F 42030
LEGO 42009 MK II
LEGO 42025
跨境電商公司,后綴進(jìn)出口有限公司。 跟國(guó)外的公司合作,國(guó)外公司縮寫(xiě) sy, 希望朋友們給點(diǎn)意見(jiàn),感謝呀。
要用到 amazon api 需要注冊(cè) amazon professional seller 賬戶(hù) 奈何我沒(méi)有公司 咋辦?還有 ebay api, https://developer.ebay.com/signin , 已經(jīng)用不同賬戶(hù)注冊(cè) 2 次了, 它提示說(shuō)他們需要 1 天時(shí)間審核 , 結(jié)果沒(méi)收到任何通知
在買(mǎi) Pixel 的時(shí)候發(fā)現(xiàn)了這個(gè),算是一個(gè)小福利吧。 在 2019 年 11 月 1 日 00:00:00 至 2019 年 12 月 3 日 23:59:59 期間,首次購(gòu)買(mǎi)海外購(gòu)商品且訂單發(fā)貨 2 天后,可在領(lǐng)獎(jiǎng)期間內(nèi)到 指定頁(yè)面 領(lǐng)取 100 元星禮卡獎(jiǎng)品。
亞馬遜歐洲站可以用法人的 WorldFirst 個(gè)人賬戶(hù)收款嗎?答案是可以的。2018 年 5 月開(kāi)始, 無(wú)論你是以個(gè)人還是公司名義注冊(cè)的,WorldFirst 這邊都可以提供第三方公司名下的對(duì)賬單了(需對(duì)方授權(quán))。因此,你現(xiàn)在用任何人的 WF 都能從亞馬遜歐洲站、英國(guó)站收款了,也支持子帳戶(hù),你只要保證 綁定時(shí)以亞馬遜那邊的公司名為準(zhǔn)即可滿足亞馬遜的收款要求 。
1、之前有不少賣(mài)家反饋說(shuō),收到亞馬遜歐洲站(含英國(guó)站)招商經(jīng)理發(fā)來(lái)的郵件,讓更改收款賬戶(hù)為公司名下的——
2、眾所周知,WorldFirst 嚴(yán)格遵循公對(duì)公,私對(duì)私的提現(xiàn)原則,公司名義的 WF 帳戶(hù)只能提現(xiàn)到本公司名下的對(duì)公銀行帳戶(hù)(國(guó)內(nèi)銀行可能要收稅)。所以,此前很多賣(mài)家都是注冊(cè)法人個(gè)人名義的 WF 來(lái)收款亞馬遜歐洲站,WF 這邊也可以提供法人對(duì)應(yīng)公司名下的對(duì)賬單 /開(kāi)戶(hù)證明( PDF 文檔)用于 KYC 審核?,F(xiàn)在亞馬遜收款新政出來(lái),Amazon 歐洲站還可以繼續(xù)使用法人的 WF 來(lái)收款嗎?如果可以,要怎么設(shè)置?對(duì)此,Thoms Xie 特意發(fā)郵件咨詢(xún)了 WorldFirst 客戶(hù)經(jīng)理,得到如下回復(fù)——
2、就是說(shuō),法人的 WF,在綁定到亞馬遜時(shí),“ [ Account Holder Name ] 賬戶(hù)持有人姓名”一欄填你的開(kāi)店公司名也是可以正常打款和入賬的。只要是占股 10%或以上的法人的 WF,聯(lián)系你的 WF 客戶(hù)經(jīng)理即可開(kāi)具對(duì)應(yīng)公司名下的 KYC 所需賬單,這樣就可以用法人的 WF 繼續(xù)收款亞馬遜歐洲站了。不過(guò),不確定亞馬遜是否會(huì)通過(guò)什么手段檢測(cè)出來(lái),為避免不必要的麻煩,建議使用營(yíng)業(yè)執(zhí)照重新注冊(cè)一個(gè) WF 公司帳戶(hù),這樣最保險(xiǎn)。
據(jù)亞馬遜某招商團(tuán)隊(duì)介紹,目前亞馬遜還沒(méi)有明文出臺(tái)收款新政,只有部分賣(mài)家收到了上述郵件,但建議歐洲站的開(kāi)戶(hù)公司名和收款帳戶(hù)的公司名一致,且最好是公司的對(duì)公賬號(hào)(比如 WF 公司帳戶(hù)、Payoneer 企業(yè)帳戶(hù))。如果賣(mài)家有收到此類(lèi)通知,應(yīng)該配合盡快更換;若還未收到通知,且已經(jīng)通過(guò) KYC 的非新手賣(mài)家,建議暫時(shí)不要輕舉妄動(dòng),以免觸發(fā)第二次 KYC。
如果您還沒(méi)有注冊(cè) WorldFirst 賬戶(hù), 請(qǐng)直接點(diǎn)擊我們的專(zhuān)有 [ WorldFirst 優(yōu)惠注冊(cè)鏈接 ] ,注冊(cè)成功可以 享受 1%優(yōu)惠提現(xiàn)費(fèi)率,人民幣提現(xiàn)當(dāng)天到賬服務(wù)。在您首次使用 WorldFirst 提現(xiàn)到國(guó)內(nèi)銀行賬戶(hù)時(shí)(最低 250 美金起 提), 輸入本站專(zhuān)屬優(yōu)惠碼“ TAO25 ”(區(qū)分大小寫(xiě)), 即可獲得 25 美元的現(xiàn)金獎(jiǎng)勵(lì)。需要注意的是,如果你直接到 WorldFirst 官網(wǎng)注冊(cè),是無(wú)法享受這個(gè)優(yōu)惠的。注冊(cè)教程詳情參看: 萬(wàn)里匯 WorldFirst 個(gè)人和公司帳戶(hù)注冊(cè)教程(送$25+1%提現(xiàn)費(fèi))
前情提要 https://www.v2ex.com/t/565582
只買(mǎi)了一塊,下單地址是新改的順豐 Delaware 倉(cāng)庫(kù),信用卡是新的。
mmp 亞馬遜幫我省錢(qián)
有人感興趣么? 美亞沒(méi)買(mǎi)過(guò)東西 日亞買(mǎi)過(guò)一次 貌似這個(gè)價(jià)格包含運(yùn)費(fèi)關(guān)稅了吧 就是沒(méi)有白色的有點(diǎn)遺憾
亞馬遜海外購(gòu)能用花唄嗎 我的訂單被退款了 原因是賬戶(hù)調(diào)賬 是花唄的原因嗎 我收貨 身份證都是我自己啊
第一次用亞馬遜 這個(gè)海外購(gòu)用的是什么快遞啊 會(huì)不會(huì)送丟啊 過(guò)關(guān)要多久呢 求助
今天我的 DHL 包裹在香港清關(guān),以前清關(guān)只需要身份證照片和清關(guān)物品名稱(chēng)、件數(shù)。現(xiàn)在還要填總價(jià)了,還有專(zhuān)輯名稱(chēng)之類(lèi)的…感覺(jué)好麻煩,特別是一次買(mǎi)很多的時(shí)候??
你們都是怎樣填的?