1. 程式人生 > >計蒜客 -- 元素移除

計蒜客 -- 元素移除

給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。

如:A[] = {1, 2, 3, 4, 5}A[]=1,2,3,4,5,要刪除數字 33,那麼返回陣列長度為 44。

親愛的小夥伴們,題目是不是很簡單呢?

提示:int removeElement(int A[], int n, int elem)

其中,n代表陣列長度,elem代表要刪掉的元素。

輸入格式

第一行輸入一個數 n(1≤n≤100),接下來一行 n 個整數,表示陣列 A 的所有元素 A​i(0≤A​i≤100),接著輸入要刪除的元素elem(0≤elem≤100)。

輸出格式

輸出一個整數,表示剩餘陣列長度。

樣例輸入

2
3 3
3
樣例輸出

0

#include<stdio.h>
#include<stdlib.h>

int removeElement(int p[],int n,int elem)
{
    int l=0;
    int i=0;
    while(p[i] != -1)
    {
        if(p[i] == elem)
        {
            for(int j = i+1;j<n;j++)
                p[j-1] = p[j];
            p[n-1] = -1
; i--; } i++; } int k = 0; while(p[k] != -1) {l++;k++;} return l; } /* int removeElement(int A[], int n, int elem){ int len = n; for(int i = 0; i < n; i++){ if(A[i] == elem) len --; } */ int main() { int n; scanf("%d
"
,&n); int *p = (int *)malloc(sizeof(int) * n); for(int i = 0; i < n;i++) { scanf("%d",&p[i]); } int del; scanf("%d",&del); printf("%d",removeElement(p,n,del)); return 0; }

相關推薦

-- 元素

給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。 如:A[] = {1, 2, 3, 4, 5}A[]=1,2,3,4,5,要刪除數字 33,那麼返回陣列長度為 44。 親愛的小夥伴們,題目是不是很簡單呢? 提示:in

元素

給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。 如:A[]=1,2,3,4,5A[] = {1, 2, 3, 4, 5}A[]=1,2,3,4,5,要刪除數字 333,那麼返回陣列長度為 444。 親愛的小夥伴們,題目是不是很簡單呢

元素

 1000ms  65536K 給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。 如:A[] = {1, 2, 3, 4, 5}A[]=1,2,3,4,5

元素

題目描述 給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。 如:A[] = {1, 2, 3, 4, 5},要刪除數字 3,那麼返回陣列長度為 4。 親愛的小夥伴們,題目是不是很簡單呢? 提示:int removeElement(int A[], int

陣列中的重複元素--

給定一個升序排列的陣列,去掉重複的數,並輸出新的陣列的長度。 例如:陣列 A = \{1, 1, 2\}A={1,1,2},你的程式應該輸出 22 即新陣列的長度,新陣列為 \{1, 2\}{1,2}。 要求:不能新開陣列分配額外的空間,即常數空間限制

元素-- 水題

給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。 如:A[] = {1, 2, 3, 4, 5}A[]=1,2,3,4,5,要刪除數字 33,那麼返回陣列長度為 44。 親愛的小夥伴們,題目是不是很簡單呢? 提示:int remo

挑戰難題 第9題:元素

給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。 如:A[] = {1, 2, 3, 4, 5}, 要刪除數字3, 那麼返回陣列長度為4. 親愛的小夥伴們,題目是不是很簡單呢? 提示: int removeElement(int A[], int n, int e

python|——陣列中的重複元素

給定一個升序排列的陣列,去掉重複的數,並輸出新的陣列的長度。 例如:陣列 A = {1, 1, 2}A={1,1,2},你的程式應該輸出 22 即新陣列的長度,新陣列為

第11題---陣列中的重複元素

給定一個升序排列的陣列,去掉重複的數,並返回新的陣列的長度。 例如: 陣列A = {1, 1, 2},你的函式應該返回長度2,新陣列為{1, 2} 要求: 不能新開陣列分配額外的空間

第9題:元素

給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。 如:A[] = {1, 2, 3, 4, 5}, 要刪除數字3, 那麼返回陣列長度為4. 親愛的小夥伴們,題目

陣列重複元素

給定一個升序排列的陣列,去掉重複的數,並輸出新的陣列的長度。例如:陣列 A={1,1,2}A = \{1, 1, 2\}A={1,1,2},你的程式應該輸出 222 即新陣列的長度,新陣列為 {1,2}\{1, 2\}{1,2}。要求:不能新開陣列分配額外的空間,即常數空間限

挑戰難題 第11題:陣列中的重複元素

時間限制 1000 ms  記憶體限制 10000 K 給定一個升序排列的陣列,去掉重複的數,並返回新的陣列的長度。 例如:    陣列A = {1, 1, 2},你的函式應該返回長度2,新陣列為{1, 2} 要求:    不能新開陣列分配額外的空間。即常數空間限制。 提示:    輸入一個整數n,以

挑戰難題:元素

給定一個數組和一個數(該數不一定在陣列中),從數組裡刪掉這個數字,返回剩下的陣列長度。 如:A[] = {1, 2, 3, 4, 5}, 要刪除數字3, 那麼返回陣列長度為4. 親愛的小夥伴們,題目是不是很簡單呢? 提示: int removeElemen

系列】挑戰難題9:元素

如:A[] = {1, 2, 3, 4, 5}, 要刪除數字3, 那麼返回陣列長度為4. 親愛的小夥伴們,題目是不是很簡單呢? 提示: int removeElement(int A[], int n, int elem) 其中,n代表陣列長度,elem代表要刪掉的元

-刪除最少的元素(動態規劃)

#include <stdio.h> #include <stdlib.h> int countDeletedElements(int *nums, int length) { //len1和len2分別為從左向右求最長遞減序列長度和從右向左

-題庫-三值排序

pac 一個數 順序 col 裏的 efault 開始 algo div 題目 排序是一種很頻繁的計算任務。一個實際的例子是,當我們給某項競賽的優勝者按金銀銅牌排序的時候。在這個任務中可能的值只有三種1,2和3。我們用交換的方法把他排成升序的。 寫一個程序計算出,計算出的

15430 XOR Queries(Trie處理位運算問題)

ron 二進制 進制 插入 我們 整數 容易 位置 xor 題意: 給出一個長度為n的數組C,回答m個形式為(L, R, A, B)的詢問, 含義為存在多少個不同的數組下標k屬於[L, R]滿足C[k] XOR A >= B(式中XOR為異或運算)。 T組測試數

騰訊課堂的物理實驗(2017初賽第三場)

text ram amp tex 方向 top names rip des A題 在騰訊課堂的物理課上,進行了一個有趣的物理實驗。 在一個長度為 LL 米的光滑軌道上,小車 A 在 00 時刻以 1\mathrm{m/s}1m/s 的速度從左端出發向右運動,小車 B 在

UCloud 的安全秘鑰 (初賽第五場)(待解決)

限制 一行 序列 0ms n) content mes 初賽 -o 20.7% 1200ms 262144K 每個 UCloud 用戶會構造一個由數字序列組成的秘鑰,用於對服務器進行各種操作。作為一家安全可信的雲計算平臺,秘鑰的安全性至關重要。因此,UCloud

UCloud 機房的網絡搭建(初賽第五場)

出口 表示 -s box ace res += 建立 tps UCloud 剛剛建立一個新機房,近日正在進行網絡搭建。機房內有 nn 臺服務器和 mm 個分線器,整個機房只有一個網線出口。分線器的作用是將一根網線轉換成多根網線。蒜頭君也知道每個分線器輸出的最大網線根數(不