啊这......总之就是先摸一摸以前的迎新赛,找找手感。

网址http://codeforces.com/gym/102426

A,忘了线性相关是啥,百度一波,然后根据以前的经验,大概高斯消元一波就行了吧。

先消成倒三角,然后找一找有没有全0向量。有全零就代表线性相关。

第一次交的时候莫名其妙的WA了...然后微调了几个地方莫名其妙就A了,太怪了。

 1 #include <bits/stdc++.h>
 2 
 3 typedef long long LL;
 4 
 5 const int N = 15;
 6 const double eps = 1e-10;
 7 
 8 int n, m;
 9 double a[N][N];
10 
11 inline double fabs(double x) {
12     return (x < 0) ? (-x) : x;
13 }
14 
15 inline bool work() {
16     for(int i = 1; i < n; i++) {
17         for(int j = i; j <= n; j++) {
18             if(fabs(a[j][i]) > eps) {
19                 // [j][i] != 0
20                 std::swap(a[j], a[i]);
21                 break;
22             }
23         }
24         if(fabs(a[i][i]) < eps) {
25             continue;
26         }
27         for(int j = i + 1; j <= n; j++) {
28             if(fabs(a[j][i]) < eps) {
29                 continue;
30             }
31             double x = a[j][i] / a[i][i];
32             for(int k = i; k <= m; k++) {
33                 a[j][k] -= a[i][k] * x;
34             }
35         }
36     }
37     for(int i = 1; i <= n; i++) {
38         bool flag = false;
39         for(int j = 1; j <= m; j++) {
40             if(fabs(a[i][j]) > eps) {
41                 flag = true;
42                 break;
43             }
44         }
45         if(!flag) {
46             return true;
47         }
48     }
49     return false;
50 }
51 
52 inline void solve() {
53 
54     memset(a, 0, sizeof(a));
55     scanf("%d%d", &n, &m);
56     for(int i = 1; i <= n; i++) {
57         for(int j = 1; j <= m; j++) {
58             int x;
59             scanf("%d", &x);
60             a[i][j] = x;
61         }
62     }
63 
64     if(work()) {
65         printf("YES\n");
66     }
67     else {
68         printf("NO\n");
69     }
70 
71     return;
72 }
73 
74 int main() {
75 
76     int T;
77     scanf("%d", &T);
78     while(T--) {
79         solve();
80     }
81 
82     return 0;
83 }
AC代码

相关文章:

  • 2021-10-07
  • 2021-12-19
  • 2022-12-23
  • 2021-11-01
  • 2021-12-30
  • 2021-10-19
  • 2022-02-15
  • 2022-01-27
猜你喜欢
  • 2021-09-20
  • 2022-12-23
  • 2021-12-06
  • 2021-12-26
  • 2021-11-19
  • 2021-11-02
  • 2022-01-22
相关资源
相似解决方案