拼多多秋招Java研发工程师编程题
老早就AK了,,这次估计得给次面试机会吧......
T1:
import java.util.Scanner; public class A { public static void main(String []args){ Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); if(c>2*b){ int x = a/c; x*=2; a-=x*c/2; if(a!=0){ if(a<=b)x++; else x+=2; } System.out.println(x); }else{ int x = a/b; if(a%b!=0)x++; System.out.println(x); } } }
T2:
import java.util.Scanner; public class B { Scanner scanner = new Scanner(System.in); int n; int m; char str[][] = new char[12][12]; void solve(){ n = scanner.nextInt(); m = scanner.nextInt(); for(int i=0;i<n;i++){ String s = scanner.next(); str[i] = s.toCharArray(); } for(int i=0;i<m;i++){ for(int j=n-1;j>=0;j--){ if(str[j][i]=='.')continue; if(str[j][i]=='x')continue; int k = j; while(k<n){ str[k][i]='.'; k++; if(k<n&&str[k][i]!='.'){ str[k-1][i]='o'; break; } } } } for(int i=0;i<n;i++){ for(int j=0;j<m;j++){ System.out.printf("%c",str[i][j]); } System.out.println(); } } public static void main(String[] args) { new B().solve(); } }
T3:
import java.util.Scanner; public class C { Scanner scanner = new Scanner(System.in); int a; int b; int vis[] = new int[9000005]; void solve(){ a = scanner.nextInt(); b = scanner.nextInt(); a%=b; if(a==0){ System.out.println(0+" "+0); }else{ int x = 1; while(vis[a]==0&&a!=0){ vis[a] = x++; a = a*10; a%=b; } if(a==0){ System.out.println(x-2+" "+0); } else{ System.out.println(vis[a]-1+" "+(x-vis[a])); } } } public static void main(String[] args) { new C().solve(); } }
T4:
import java.util.HashMap; import java.util.Scanner; public class D { Scanner scanner = new Scanner(System.in); int n; int l; int flag; int vis[][]; String []str = new String[2005]; HashMap<String,Integer> mp = new HashMap<String, Integer>(2005); char []ans; void solve(){ n = scanner.nextInt(); l= scanner.nextInt(); flag = 0; ans = new char[l]; vis = new int[l][26]; for(int i=0;i<n;i++){ String s = scanner.next(); for(int j=0;j<l;j++){ vis[j][s.charAt(j)-'A']=1; } if(mp.containsKey(s)){ mp.put(s,mp.get(s)+1); }else{ mp.put(s,1); } } dfs(0); if(flag==0) System.out.println("-"); } void dfs(int len) { if(flag==1)return; if(len==l){ String s = new String(ans); if(!mp.containsKey(s)){ System.out.println(s); flag = 1; } return; } for(int j=0;j<26;j++){ if(vis[len][j]==1){ ans[len] = (char)('A'+j); dfs(len+1); } } } public static void main(String[] args) { new D().solve(); } }