1. 程式人生 > >洛谷——P1469 找筷子

洛谷——P1469 找筷子

輸入格式 amp bad orange copy getch turn 一個 clas

P1469 找筷子

題目描述

經過一段時間的緊張籌備,電腦小組的“RP餐廳”終於開業了,這天,經理LXC接到了一個定餐大單,可把大家樂壞了!員工們齊心協力按要求準備好了套餐正準備派送時,突然碰到一個棘手的問題,筷子!CX小朋友找出了餐廳中所有的筷子,但遺憾的是這些筷子長短不一,而我們都知道筷子需要長度一樣的才能組成一雙,更麻煩的是CX找出來的這些筷子數量為奇數,但是巧合的是,這些筷子中只有一只筷子是落單的,其余都成雙,善良的你,可以幫CX找出這只落單的筷子的長度嗎?

輸入輸出格式

輸入格式:

第一行讀入一個數N,它代表CX找到的筷子的根數。

第二行是N個用空格隔開的數,代表筷子的長度。

輸出格式:

一行,落單的筷子的長度。

輸入輸出樣例

輸入樣例#1: 復制
9
2 2 1 3 3 3 2 3 1
輸出樣例#1: 復制
2

說明

對於80%的數據,N<=100000;

對於100%的數據,N<=10000000。

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 10000100
using namespace std;
int n,s,a[N];
int read() { int x=0,f=1; char ch=getchar(); while(ch<0||ch>9){if(ch==-)f=-1;ch=getchar();} while(ch>=0&&ch<=9) x=x*10+ch-0,ch=getchar(); return x*f; } int main() { n=read(); for(int i=1;i<=n;i++) a[i]=read(); sort(a+1,a+1+n);
for(int i=1;i<=n;i++) if(a[i]==a[i-1]) s++; else { if(s%2==0) s=1; else { printf("%d",a[i-1]); break; } } return 0; }

洛谷——P1469 找筷子