删除

【题目描述】

现在,我的 上有 n 个数字,分别是 a1; a2; a3; :::; an。 我现在需要删除其中的 k 个数字。当然我不希望随随便便删除,我希望删除 k

数字之后,剩下的 n   k 个数中有最多的不同的数

【输入格式】

第 两个正整数 nk,含义如题 描述。 接下来  ,有 n 个 负整数,分别是 a1an

【输出格式】

共  , 个整数 ans,表   删除了 k 个数字后最多的不同的数的个数。

【样例输入】

4 1

1 3 1 2

【样例输出】

3

【样例解释】

如果删去第 个 1: 在[3,1,2]中有 3 个不同的数 如果删去 3:

在[1,1,2]中有 2 个不同的数 如果删去第 个 1: 在[1,3,2]中有 3 个不同的数

【解题思路】

排序去重什么的,然后判断一下有木有比k大,大概就是这个样子


 1 program del;
 2 var a:array[0..100000] of longint;
 3      i,j,n,k,ans:Longint;
 4  procedure sort(l,r: longint);
 5       var
 6          i,j,x,y: longint;
 7       begin
 8          i:=l;
 9          j:=r;
10          x:=a[(l+r) div 2];
11          repeat
12            while a[i]<x do
13             inc(i);
14            while x<a[j] do
15             dec(j);
16            if not(i>j) then
17              begin
18                 y:=a[i];
19                 a[i]:=a[j];
20                 a[j]:=y;
21                 inc(i);
22                 j:=j-1;
23              end;
24          until i>j;
25          if l<j then
26            sort(l,j);
27          if i<r then
28            sort(i,r);
29       end;
30 begin
31     assign(input,'del.in'); reset(input);
32     assign(output,'del.ans'); rewrite(output);
33     read(n,k);
34     ans:=n;
35     for i:=1 to n do read(a[i]);
36     sort(1,n);
37     for i:=1 to n do
38     begin
39         if a[i]=a[i-1] then
40         begin
41             if k>0 then dec(k);
42             dec(ans);
43         end;
44     end;
45     writeln(ans-k);
46     close(input);
47     close(output);
48 end.

 

 

 

转载于:https://www.cnblogs.com/wuminyan/p/4744007.html

### 如何彻底删除 Conda 虚拟环境 要彻底删除 Conda 的虚拟环境并解决删除后仍存在的问题,可以按照以下方法操作: #### 1. 列出当前所有的 Conda 虚拟环境 通过运行 `conda info --envs` 或者 `conda env list` 命令来查看现有的虚拟环境列表[^1]。 ```bash conda info --envs ``` 此命令会显示所有已创建的 Conda 虚拟环境及其路径。 --- #### 2. 使用 Conda 删除指定虚拟环境 如果目标虚拟环境名为 `your_env_name`,可以通过以下命令尝试删除该环境: ```bash conda remove --name your_env_name --all ``` 这条命令会移除整个虚拟环境以及其中安装的所有包。如果执行过程中遇到权限错误或其他异常情况,则可能需要进一步排查原因[^2]。 --- #### 3. 手动删除残留文件夹 当使用 `conda remove` 方法无法成功删除虚拟环境时,可以选择手动方式清理对应的目录结构。通常情况下,Conda 将虚拟环境存储于特定位置(例如默认路径为 `$HOME/miniconda3/envs/`)。因此可以直接定位到对应的目标文件夹,并强制将其删除: ```bash rm -rf ~/miniconda3/envs/your_env_name ``` 注意替换实际路径中的用户名部分与具体环境名称字段以匹配本地配置状况。 --- #### 4. 清理缓存数据及历史记录 有时即使已经物理上清除了某个虚拟环境的相关资料,但由于某些元数据未被同步更新而导致感知上的“存在”。此时可考虑清除 Conda 缓存区内的相关内容项: ```bash conda clean --all ``` 这一步骤有助于释放磁盘空间的同时也能够修复潜在的一些不一致状态问题。 --- #### 5. 验证是否完全移除 最后再次调用 `conda info --envs` 查看是否存在之前试图删掉的那个虚拟环境条目;如果没有再列出来即表明删除成功。 ```python import os os.system('conda info --envs') ``` 以上就是针对 Conda 中难以正常卸载掉的虚拟环境所采取的一系列措施说明文档。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值