我来发个Java的 import java.util.Scanner; /** * 贪心 */ public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); long hp = in.nextLong(); long x = in.nextLong(); long y = in.nextLong(); long ans1 = hp / x; if (hp % x != 0) { ans1++; } long ans2 = hp / (y) * 2; hp %= y; long ans; if (hp == 0) { } else if (hp <= x) { ans2++; } else { ans2 += 2; } ans = Math.min(ans1, ans2); System.out.println(ans); } } import java.util.Scanner; /** * 模拟 */ public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int m = in.nextInt(); char[][] a = new char[n][m]; in.nextLine(); for (int i = 0; i < n; i++) { String line = in.nextLine(); a[i] = line.toCharArray(); } for (int j = 0; j < m; j++) { int s = 0; for (int i = 0; i < n; i++) { if (a[i][j] == 'o') { a[i][j] = '.'; s++; } if (a[i][j] == 'x') { for (int k = 1; k <= s; k++) { a[i-k][j] = 'o'; } s = 0; } } } for (int i = 0; i < n; i++) { System.out.println(a[i]); } } } import java.util.Map; import java.util.Scanner; import java.util.TreeMap; /** * 模拟 */ public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int a = in.nextInt(); int b = in.nextInt(); Map<Integer, Integer> mp = new TreeMap<>(); a %= b; for (int i = 0; ;i++) { int x = a % b; if (x == 0) { System.out.println(i + " 0"); break; } Integer t = mp.get(x); if (t != null) { System.out.printf("%d %d\n", t, i - t); break; } mp.put(x, i); a = x * 10; } } } import java.util.*; /** * 深搜 */ public class Main { static int n; static int l; static List<Set<Character> > b; static Set<String> st; static boolean flag = false; static void dfs(int k, StringBuilder sb) { if (flag) { return; } if (k == l) { if (!st.contains(sb.toString())) { System.out.println(sb); flag = true; } return; } b.get(k).forEach(character -> { StringBuilder ssb = new StringBuilder(sb); ssb.append(character); dfs(k + 1, ssb); }); } public static void main(String[] args) { Scanner in = new Scanner(System.in); n = in.nextInt(); l = in.nextInt(); in.nextLine(); String[] s = new String[n]; st = new TreeSet<>(); for (int i = 0; i < n; i++) { s[i] = in.nextLine(); st.add(s[i]); } b = new ArrayList<>(); for (int i = 0; i < l; i++) { b.add(new TreeSet<>()); } for (int j = 0; j < l; j++) { for (int i = 0; i < n; i++) { b.get(j).add(s[i].charAt(j)); } } dfs(0, new StringBuilder()); if (!flag) { System.out.println("-"); } } }
点赞 10

相关推荐

yubullym:双非目前 0 正式 offer,打算继续实习到 1 月准备春招了
点赞 评论 收藏
分享
rndguy:个人思路,抛砖引玉。 要我的话我先问清楚需求:要什么精度,什么速度,什么环境。 如果精度要求很低,平台也有点柔性的话,只需要输出pwm,然后开个中断记录各多少个脉冲,如果脉冲时间不对齐了就反馈控制电流加减就行。要求同步要求稍微高点的话可以在脉冲间做个线性插值,同步精度会高些。 但总体来说,如果直流有刷只有脉冲没有好的编码器的话很难做精准定位什么的(除非用一些电机磁路结构相关的奇技淫巧如高频注入什么的),所以要求更高就需要大量参数辨识和校准,那就慢多了。
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务