日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NYOJ 1069 生活的难题

發布時間:2025/3/16 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NYOJ 1069 生活的难题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


生活的難題

時間限制:1500 ms ?|? 內存限制:240000 KB 難度:3 描述

????生活又調皮了,整天不好好的集訓,還偷偷的看電影!今天終于被逮到了。于是萬惡的BOSS們就出了一個題來為難為難他。題目是這樣的,輸入一個整型數組,數組里除了兩個數出現一次之外,其它所有數字出現的次數都是2次,求這兩個數字的乘積。

輸入
第一行輸入一個整數T(T<=5),表示有T組測試數據。
每組數據占兩行,第一行為一個數N(2<=N<=1000),表示有N個數;第二行有N個數,1<=a[i]<=60,000,000(1<=i<=N)。
輸出
每組數據輸出占一行,輸出這兩個數字的和。
樣例輸入
1 8 2 6 3 4 3 2 5 5
樣例輸出
24
這曾是一道C++面試題,網上有很多講解,我就不白話了。。。。。。下面直接貼代碼!
注意:最后的積可能超出int范圍,所以要用long long數據類型!
AC碼:
#include<stdio.h> long long num[1005]; int main() {long long T,n,a,b,i,k;scanf("%lld",&T);while(T--){scanf("%lld",&n);a=0;for(i=0;i<n;i++){scanf("%lld",&num[i]);a=a^num[i];}b=a;k=0;while(!(b&1)){b=b>>1;k++;}b=a;for(i=0;i<n;i++){if((num[i]>>k)&1){b=b^num[i];}}printf("%lld\n",b*(a^b));}return 0; }

總結

以上是生活随笔為你收集整理的NYOJ 1069 生活的难题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。