HDU 5536 Chip Factory

来源:https://www.cnblogs.com/zwfymqz/archive/2018/02/11/8440398.html
-Advertisement-
Play Games

Chip Factory Time Limit: 18000/9000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 4414 Accepted Submission(s): 1954 ...


Chip Factory

Time Limit: 18000/9000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)
Total Submission(s): 4414    Accepted Submission(s): 1954

  Problem Description John is a manager of a CPU chip factory, the factory produces lots of chips everyday. To manage large amounts of products, every processor has a serial number. More specifically, the factory pro

At the end of the day, he packages all the chips produced this day, and send it to wholesalers. More specially, he writes a checksum number on the package, this checksum is defined as below:
\max_{i,j,k} (s_i+s_j) \oplus s_k
 
which i,j,k are three different integers between 1 and n . And \oplus is symbol of bitwise XOR.

Can you help John calculate the checksum number of today?
 

 

Input The first line of input contains an integer T indicating the total number of test cases.

The first line of each test case is an integer n , indicating the number of chips produced today. The next line has n integers s_1, s_2, .., s_n , separated with single space, indicating serial number of each chip.

1 \le T \le 1000
3 \le n \le 1000
0 \le s_i \le 10^9
There are at most 10 testcases with n > 100
 

 

Output

 

 

Output For each test case, please output an integer indicating the checksum number in a line.  

 

Sample Input 2 3 1 2 3 3 100 200 300  

 

Sample Output 6 400  

 

Source 2015ACM/ICPC亞洲區長春站-重現賽(感謝東北師大)  

 

Recommend hujie   |   We have carefully selected several similar problems for you:  6263 6262 6261 6260 6259      讀不懂英語好吃虧啊。 一開始一直在想前面的$s_i+s_j$怎麼搞。 後來看了一下輸入,這麼不就是個逗比題麽。。 $s_i+s_j$只要暴力枚舉就好,建一顆01Trie樹,查詢最大的時候優先走不一樣的 查詢之前先把$s_i,s_j$刪除 查完之後再加進去  
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
const int MAXN=1e6+10;
inline int read()
{
    char c=getchar();int x=0,f=1;
    while(c<'0'||c>'9'){if(c=='-')f=-1;c=getchar();}
    while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();}
    return x*f;
}
#define debug(x) printf("%d",x);
struct node
{
    int val,ch[2];
    node(){val=ch[0]=ch[1]=0;}
    void clear(){val=ch[0]=ch[1]=0;}
}T[MAXN];
int a[MAXN],root=0,tot=0;
void Insert(int v)
{
    int now=root;
    for(int i=31;i>=0;i--)
    {
        int opt=(v&(1<<i))?1:0;
        if(!T[now].ch[opt]) 
            T[now].ch[opt]=++tot;
        now=T[now].ch[opt];
        T[now].val++;
     }
}
void Delet(int v)
{
    int now=root;
    for(int i=31;i>=0;i--)
    {
        int opt=(v&(1<<i))?1:0;
        now=T[now].ch[opt];
        T[now].val--;
     }
}
int Query(int v)
{
    int ans=0,now=root;
    for(int i=31;i>=0;i--)
    {
        int opt=(v&(1<<i))?1:0;
        if(T[T[now].ch[opt^1]].val) 
            ans+=1<<i,now=T[now].ch[opt^1];
        else 
            now=T[now].ch[opt];
    }
    return ans;
}
int main()
{
    freopen("a.in","r",stdin);
    int Test=read();
    while(Test--)
    {
        int N=read();
        for(int i=1;i<=N;i++) a[i]=read();
        for(int i=1;i<=4*N;i++) 
            T[i].clear();
        for(int i=1;i<=N;i++) 
            Insert(a[i]);
        int ans=0;
        for(int i=1;i<=N;i++)
        {
            for(int j=1;j<i;j++)
            {
                Delet(a[i]);Delet(a[j]);
                ans=max(ans,Query(a[i]+a[j]));
                Insert(a[i]);Insert(a[j]);
            }
        }
        printf("%d\n",ans);
    }
    return 0;
}

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • GridView是一種適配器佈局,它的繼承關係是ViewGroup-->AdapterView-->AbsListView-->GridView,他是從一個adapter中取出內容填充到GridView中的每一個子View。 GridLayout是一個佈局,它大大簡化了對複雜佈局的處理,提高了性能。 ...
  • 我們不生產內容,我們只是互聯網的內容搬運工,這是大部分不具備原創能力個人站長的心聲。雖然原創能力不夠,但是服務目標用戶群體依然要清晰、細化和長尾,做的內容對用戶是有用的,而非垃圾。 ...
  • `Lighthouse 頁面性能 PWA 可訪問性(無障礙) 最佳實踐 SEO`。Lighthouse會對各個測試項的結果打分,並給出優化建議,這些打分標準和優化建議可以視為Google的網頁最佳實踐。 使用入門 運行Lighthouse的方式有三種:在開發者工具(Devtools)的Audits, ...
  • // 對Date的擴展,將 Date 轉化為指定格式的String// 月(M)、日(d)、小時(h)、分(m)、秒(s)、季度(q) 可以用 1-2 個占位符, // 年(y)可以用 1-4 個占位符,毫秒(S)只能用 1 個占位符(是 1-3 位的數字) // 例子: // (new Date( ...
  • 自己最近研發了一套新的htmlcss教程,併進行了授課實施,視頻教程百度雲下載鏈接如下: "視頻及案例源碼下載地址" 本套教程視頻需要安裝屏幕錄像專家軟體才能觀看,屏幕錄像專家下載地址如下: "屏幕錄像專家" 本套教程的目標為讓具備初中以上學歷的任何人都可以在短時間內(20個小時)入門網頁製作。 本 ...
  • 背景:最近做了一個網站,傳單伺服器之後,每次打開都是亂碼,不對啊,我在本地測得明明是排版很整齊啊,然後發現,360用的是“相容模式”打開的,這就尷尬了,用戶一打開就是亂碼,這用戶體驗得有多差!用戶可不管你是什麼模式。我研究了一番,終於找到解決辦法。 國內的主流瀏覽器基本都是雙核瀏覽器:基於Webki ...
  • 承接上篇文章: "小白學Docker之Compose" ,自學網站來源於 "https://docs.docker.com/get started" 系列文章: "小白學Docker之基礎篇" "小白學Docker之Compose" "小白學Docker之Swarm" 概念 Docker Swarm ...
  • 進入到第六章了,我們要開始聊聊分散式系統之中的核心問題: 數據分區 。分散式系統通常是通過大規模的數據節點來處理單機沒有辦法處理的海量數據集,因此,可以將一個大型數據集可以分佈在多個磁碟上,查詢負載可以分佈在多個處理器上。在這一章中,我們首先討論劃分大型數據集的不同方法,並觀察數據索引如何與分區交互 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...