6283. 正整数和负整数的最大计数

代码

直接遍历统计即可

class Solution {
public int maximumCount(int[] nums) {
int a = 0, b = 0;
for (int i = 0; i < nums.length; i++) {
if (nums[i] > 0) a++;
else if (nums[i] < 0) b++;
} return Math.max(a, b);
}
}

6285. 执行 K 次操作后的最大分数

代码

用最大堆即可

ceil是上取整,操作数和返回值都是 double,需要强转,可能会出现浮点错误,所以使用整数运算规避。

ceil(a / b) = (a + b - 1) / b

class Solution {
public long maxKelements(int[] nums, int k) {
PriorityQueue<Integer> pq = new PriorityQueue<>(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2 - o1;
}
});
int n = nums.length;
for (int i = 0; i < n; i++) pq.add(nums[i]);
long ans = 0;
while (k-- > 0) {
int t = pq.peek();
pq.poll();
ans += t;
// int q = (int) Math.ceil(t / 3.0);
int q = (t + 2) / 3;
pq.add(q);
} return ans;
}
}

6284. 使字符串总不同字符的数目相等

代码

比赛的时候看错题了,想错了,以为暴力模拟是 1e5 x 1e5,时间不够

其实只模拟 26 个字母即可,复杂度是 26 x 26

先求出来各自不同字母的数量,还有字母映射到数组中

遍历两个哈希数组,交换字母判断即可

  1. 如果当前不存在该字母,跳过此次循环
  2. 如果两个字符串有相同字母,并且 不同字母数相同,返回 true
  3. 交换两个字符,判断两字符串不同字母个数是否相同即可
class Solution {
public boolean isItPossible(String s1, String s2) {
int[] a = new int[26], b = new int[26];
int x = 0, y = 0;
for (int i = 0; i < s1.length(); i++) {
int t = s1.charAt(i) - 'a';
a[t]++;
if (a[t] == 1) x++;
}
for (int i = 0; i < s2.length(); i++) {
int t = s2.charAt(i) - 'a';
b[t]++;
if (b[t] == 1) y++;
}
// System.out.println(x + " " + y + " " + get_count(a) + " " + get_count(b));
for (int i = 0; i < 26; i++) {
if (a[i] == 0) continue;
for (int j = 0; j < 26; j++) {
if (b[j] == 0) continue;
if (i == j) if (x == y) return true;
a[i]--;
a[j]++;
b[i]++;
b[j]--;
if (get_count(a) == get_count(b)) return true;
a[i]++;
a[j]--;
b[i]--;
b[j]++;
}
} return false;
} private int get_count(int[] a) {
int ans = 0;
for (int i = 0; i < 26; i++) {
if (a[i] > 0) ans++;
}
return ans;
}
}

LeetCode_单周赛_327的更多相关文章

  1. 算法5: LeetCode_单链表_两数相加

    题目: * 给你两个 非空 的链表,表示两个非负的整数.它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字. * 请你将两个数相加,并以相同形式返回一个表示和的链表. * 你可 ...

  2. Leetcode 第133场周赛解题报告

    今天参加了leetcode的周赛,算法比赛,要求速度比较快.有思路就立马启动,不会纠结是否有更好的方法或代码可读性.只要在算法复杂度数量级内,基本上是怎么实现快速就怎么来了. 比赛时先看的第二题,一看 ...

  3. 【Leetcode周赛】从contest-111开始。(一般是10个contest写一篇文章)

    Contest 111 (题号941-944)(2019年1月19日,补充题解,主要是943题) 链接:https://leetcode.com/contest/weekly-contest-111 ...

  4. H5单页面手势滑屏切换原理

    H5单页面手势滑屏切换是采用HTML5 触摸事件(Touch) 和 CSS3动画(Transform,Transition)来实现的,效果图如下所示,本文简单说一下其实现原理和主要思路. 1.实现原理 ...

  5. 快速构建H5单页面切换骨架

    在Web App和Hybrid App横行的时代,为了拥有更好的用户体验,单页面应用顺势而生,单页面应用简称`SPA`,即Single Page Application,就是只有一个HTML页面的应用 ...

  6. ASP.NET Aries 入门开发教程9:业务表单的开发

    前言: 经过前面那么多篇的列表的介绍,终于到了大伙期待的表单开发了. 也是本系列的最后一篇文章了! 1:表单页面的权限设置与继承 对于表单页面,权限的设置有两种: 1:你可以选择添加菜单(设置为不显示 ...

  7. 【CSS进阶】伪元素的妙用--单标签之美

    最近在研读 <CSS SECRET>(CSS揭秘)这本大作,对 CSS 有了更深层次的理解,折腾了下面这个项目: CSS3奇思妙想 -- Demo (请用 Chrome 浏览器打开,非常值 ...

  8. bootstrap + requireJS+ director+ knockout + web API = 一个时髦的单页程序

    也许单页程序(Single Page Application)并不是什么时髦的玩意,像Gmail在很早之前就已经在使用这种模式.通常的说法是它通过避免页面刷新大大提高了网站的响应性,像操作桌面应用程序 ...

  9. 探索ASP.NET MVC5系列之~~~3.视图篇(下)---包含常用表单和暴力解猜防御

    其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...

  10. SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=》提升)

     SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=>提升,5个Demo贯彻全篇,感兴趣的玩才是真的学) 官方demo:http://www.asp.net/si ...

随机推荐

  1. Vue3 企业级优雅实战 - 组件库框架 - 5 组件库通用工具包

    该系列已更新文章: 分享一个实用的 vite + vue3 组件库脚手架工具,提升开发效率 开箱即用 yyg-cli 脚手架:快速创建 vue3 组件库和vue3 全家桶项目 Vue3 企业级优雅实战 ...

  2. Installing ClickHouse-22.10.2.11 on openEuler

    一.Installing ClickHouse-22.10.2.11 on openEuler 1 地址 https://clickhouse.com https://packages.clickho ...

  3. Vue2 到 Vue3,重温这 5 个常用的 API

    距离Vue3发布已经过去一年多时间了,从Vue2到Vue3是一个不小的升级,包括周边生态等.虽然目前大多数开发者们在使用的仍旧以Vue2为准,但Vue3显然是Vue开发者们未来必须面对的,而且前不久V ...

  4. 有关二级指针char **p 的问题

    int main() { char *str[] = {"welcome", "to", "Fortemdia", "Nanjin ...

  5. <一>关于运算符重载

    C++的运算符重载:使对象的运算表现得和编译器内置类型一样 如下代码,如果T是整形,那很好理解,但是如果 T 是一个 Student 类, a + b ?怎么操作,两个学生类怎么相加? 这个就是我们要 ...

  6. Jmeter中用户定义的变量跟用户参数的区别

    用户定义的变量: 全局变量,可以跨线程组被调用,但是,在启动运行时,获取一次值,在运行过程中,不会再动态获取值.用户参数: 局部变量,只能在自己的线程组中被调用,不能直接跨线程组被调用:但是,它在启动 ...

  7. Datawhale组队学习_Task03:详读西瓜书+南瓜书第4章

    第4章 决策树 4.1 基本流程 #输入:训练集D={${(x_1,y_1),(x_2,y_2),...,(x_m,y_m)}$}; #属性集A=${{a_1,a_2,...,a_d}}$. #过程: ...

  8. Kubernetes(k8s)存储管理之数据卷volumes(二):hostPath数据卷

    目录 一.系统环境 二.前言 三.hostPath数据卷 3.1 hostPath数据卷概览 3.2 创建有hostPath卷的pod 一.系统环境 服务器版本 docker软件版本 Kubernet ...

  9. vue引入高德地图

    一,下载 npm install vue-amap --save 二,main.js文件内引入 import VueAMap from 'vue-amap' Vue.use(VueAMap); // ...

  10. TKE 注册节点,IDC 轻量云原生上云的最佳路径

    林顺利,腾讯云原生产品经理,负责分布式云产品迭代和注册节点客户扩展,专注于云原生混合云新形态的推广实践. 背景 企业在持续业务运维过程中,感受到腾讯云 TKE 带来的便捷性和极致的使用体验,将新业务的 ...