51nod 1103 N的倍數 (抽屜原理)
題目連結:傳送門
題意: 略。
分析:
把字首和統計出來對n取模,任意連個相等的sum[i],sum[j],[i,j]內的數的和都滿足這個條件。
n個數對n取模,範圍為[0~n-1],由抽屜原理可知,最少有一個數模n=0,或者兩個數模n相等。
程式碼如下:
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int maxn = 50010;
LL a[maxn],sum[maxn];
int main()
{
int n;
while(~scanf("%d",&n)){
int tag = 0;
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
sum[i] = i == 0 ? a[i]%n : (sum[i-1] + a[i])%n;
if(sum[i]==0) tag = i;
}
if(tag){
printf("%d\n",tag+1);
for(int i=0;i<=tag;i++)
printf("%d\n",a[i]);
continue;
}
int st=0,ed=0;
for(int i=0;i<n;i++){
for(int j=i+1;j<n;j++){
if(sum[i]==sum[j]){
st=i+1,ed=j;
tag=j-i;
break;
}
}
if(tag) break;
}
if(tag==0) puts("No Solution");
else{
printf("%d\n",tag);
for(int i=st;i<=ed;i++)
printf("%d\n",a[i]);
}
}
return 0;
}
相關文章
- flutter上拉抽屜效果,flutter拖動抽屜效果Flutter
- iOS 抽屜效果iOS
- Swift iOS : 抽屜效果SwiftiOS
- IOS抽屜效果的實現iOS
- Flutter 類抽屜效果動畫實現。Flutter動畫
- [UI]抽屜選單DrawerLayout分析(二)UI
- 儲存2N倍擴容原理
- Flutter - Drawer 抽屜檢視與自定義headerFlutterHeader
- Android開發之DrawerLayout實現抽屜效果Android
- 仿百度地圖上拉下滑抽屜盒地圖
- 玩轉iOS開發 - 簡易的實現2種抽屜效果iOS
- 安卓導航抽屜 Navigation Drawer 實現沉浸通知欄安卓Navigation
- 需要側滑抽屜效果?一行程式碼足以!行程
- iOS實現簡單的抽屜式側欄——MMDrawerController的使用iOSController
- 杭電OJ 2028求n個數的最小公倍數
- flutter好用的輪子推薦十二-flutter一個全屏動效的抽屜元件Flutter元件
- flutter好用的輪子推薦九-flutter可定製的上下滑出抽屜Flutter
- Android UI開發第九篇——SlidingDrawer 抽屜效果AndroidUI
- 【數位dp入門】51nod 1009 數字1的數量
- 51nod 1352 集合計數(擴充套件歐幾里得)套件
- 抽絲剝繭okhttp(五)Interceptors原理HTTP
- Sqoop 並行抽數OOP並行
- 計算2的N次冪n 可輸入,n為自然數
- python 輸入一個整數,判斷其是否既是3的倍數,又是5的倍數Python
- 指標-n個數的排序指標排序
- vue 數字上下滾動抽獎Vue
- JavaScript 數字上下滾動抽獎JavaScript
- 【提升學習力】如何讓學習效果提升 N 倍
- asyncio系列之抽絲剝繭分析事件排程的核心原理事件
- 計算2..n的素數
- 實現自然數N的全排列
- 51nod 1459 迷宮遊戲遊戲
- Oracle DBLINK 抽數以及DDL、DML操作Oracle
- Java動態編譯優化——提升編譯速度(N倍)Java編譯優化
- 讓你的程式碼減少三倍!使用kotlin開發Android(五) 縮短N倍的監聽器KotlinAndroid
- AbstractQueuedSynchronizer(AQS)抽絲剝繭深入瞭解JUC框架原理AQS框架
- Java公約公倍數Java
- 放大倍數超5萬倍的Memcached DDoS反射攻擊,怎麼破?反射