特判方程迭代
来源:互联网 发布:python 幂函数 编辑:程序博客网 时间:2024/05/10 02:57
#include<iostream>#include<cstdio>#include<cmath>using namespace std;const int maxn = 100000 + 7;int D[maxn];int B[maxn];int OP[3] = { 0,1,-1 };int main(){ int T; cin >> T; while (T--) { int n; cin >> n; long long sum = 0; for (int i = 0; i < n; i++) { scanf("%d", D + i); sum += D[i]; } if (sum%n) { cout << "NO" << endl; } else { if (n == 1) { cout << "YES" << endl; } else if (n == 2) { if (abs(D[0] - D[1]) == 2|| abs(D[0] - D[1])==0) { cout << "YES" << endl; if (D[0] == D[1]) { cout << 0 << endl; } else { cout << 1 << endl; } if (D[0] > D[1]) { cout << 1 << " " << 2 << endl; } else if (D[0] < D[1]) { cout << 2 << " " << 1 << endl; } } else { cout << "NO" << endl; } } else { long long ave = sum / n; for (int i = 0; i < n; i++) { D[i] -= ave; } int i; for (i = 0; i < 3; i++) { B[n - 1] = OP[i]; int j; B[0] = D[0] + B[n - 1]; if (B[0] < -1 || B[0]>1) continue; for (j = 1; j < n - 1; j++) { B[j] = D[j] + B[j - 1]; if (B[j] < -1 || B[j]>1) { break; } } if (j == n - 1 && B[n - 1] == D[n - 1] + B[n - 2]) { break; } } if (i == 3) { cout << "NO" << endl; } else { cout << "YES" << endl; int cnt = 0; for (int k = 0; k < n; k++) { if (B[k]!=0) { cnt++; } } cout << cnt << endl; for (int k = 0; k < n; k++) { int p = k + 1, q = k + 2; if (q == n + 1) q = 1; if (B[k] > 0) { printf("%d %d\n", p, q); } else if(B[k]<0) { printf("%d %d\n",q,p); } } } } } }}
0 0
- 特判方程迭代
- 埃特金加速迭代求解方程
- UVA107等比数列注意特判
- 连分数法解佩尔方程特解
- Minesweeper(暴力,注意特判)
- 艾呀喵啊 (特判与大数)
- HDOJ-1253(BFS + 特判)
- [POI 2011]Lollipop(二分+特判)
- UVA10596欧拉回路加特判
- 序列seq (各种特判)
- uva7511 Multiplication Table (模拟+特判)
- 玄学定理-Nan-Spj特判定理
- [BZOJ4542][HNOI2016]大数(莫队+特判)
- ccsu 1027 一元三次方程求解 (牛顿迭代)
- nyoj 503 解方程 (牛顿迭代)
- 扩展欧几里得算法求方程特解
- [bzoj 1067 降雨量] [poj 2637 WorstWeather Ever] rmq+特判
- poj2049 Finding Nemo(建图+BFS+优先队列+特判)
- android 代码混淆 不混淆第三方jar包
- pku 2255
- c语言内存管理、野指针、malloc
- [勇者闯LeetCode] 28. Implement strStr()
- C++动态内存:(一)new/new[]、delete/delete[]运算符
- 特判方程迭代
- zscat分布式框架部署
- 结果填空:方格选数(DFS)
- 最长连续数字子串
- C++利用链表与模板实现栈
- POJ2559 POJ2082 POJ3494(最大矩形面积 单调栈)
- 转接IC NCS8803:HDMI转EDP芯片
- Spring 框架的 BeanFactory 和 ApplicationContext 简述
- LeetCoder_____Container With Most Water(11)