usaco-4.1-stall4-passed

这个题是最有意思的了,一次性通过,网络流,最大流法,匈牙利法,网上有一篇趣写算法系列--趣写算法系列之--匈牙利算法

这是我见过很有趣的东东了,推荐给大家,

/*
ID: qq104801
LANG: C++
TASK: stall4
*/

#include <iostream>
#include <fstream>
#include <cstring>
#include <vector>
#include <queue>
#include <stack>
#include <algorithm>
using namespace std;

const int inf=0xfffffff;
const int nmax=205;
int n,m,ans;
int a[nmax][nmax];
int v[nmax],girl[nmax];

bool find(int x)
{
    int i,j;
    for(j=1;j<=m;j++)
        if(a[x][j] && !v[j])
        {
            v[j]=1;
            if(girl[j]==0 || find(girl[j]))
            {
                girl[j]=x;
                return true;
            }
        }
    return false;
}

void test()
{
    freopen("stall4.in","r",stdin);
    freopen("stall4.out","w",stdout);
    cin>>n>>m;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i][0];
        for(int j=1;j<=a[i][0];j++)
        {
            int t;
            cin>>t;
            a[i][t]=1;
        }
    }

    for(int i=1;i<=n;i++)
    {
        memset(v,0,sizeof(v));
        if(find(i))ans+=1;
    }
    cout<<ans<<endl;
}

int main ()
{
    test();
    return 0;
}

test data:

USACO Training
Grader Results
12 users online
CHN/2 IDN/1 IND/1 MAC/1 SWE/1 USA/4 VNM/2

USER: cn tom [qq104801]
TASK: stall4
LANG: C++

Compiling...
Compile: OK

Executing...
   Test 1: TEST OK [0.003 secs, 3540 KB]
   Test 2: TEST OK [0.003 secs, 3540 KB]
   Test 3: TEST OK [0.003 secs, 3540 KB]
   Test 4: TEST OK [0.003 secs, 3540 KB]
   Test 5: TEST OK [0.011 secs, 3540 KB]
   Test 6: TEST OK [0.016 secs, 3540 KB]
   Test 7: TEST OK [0.016 secs, 3540 KB]
   Test 8: TEST OK [0.016 secs, 3540 KB]
   Test 9: TEST OK [0.016 secs, 3540 KB]

All tests OK.

YOUR PROGRAM (‘stall4‘) WORKED FIRST TIME! That‘s fantastic -- and a rare thing. Please accept these special automated congratulations.

Here are the test data inputs:

------- test 1 ----
1 0
0
------- test 2 ----
5 5
1 1
1 2
1 3
1 4
1 5
------- test 3 ----
5 5
2 2 5
3 2 3 4
2 1 5
3 1 2 5
1 2
------- test 4 ----
10 10
3 1 7 8
3 5 9 10
3 3 6 10
3 5 6 9
3 4 5 8
3 1 8 10
2 3 8
2 4 8
3 2 3 6
3 4 6 7
------- test 5 ----
15 15
2 12 13
2 1 11
2 8 12
2 7 9
2 12 15
2 6 8
2 5 12
2 12 14
2 10 12
2 3 4
2 11 13
2 10 11
2 8 15
2 8 15
2 13 14
------- test 6 ----
50 50
2 12 30
2 18 43
2 11 46
2 30 37
2 25 28
2 2 49
2 26 36
2 3 27
2 23 50
2 2 50
2 17 22
2 47 48
2 8 11
2 41 49
2 6 18
2 18 43
2 36 48
2 8 36
2 22 31
2 6 37
2 39 49
2 5 25
2 25 31
2 24 27
2 4 27
1 25
2 21 43
2 1 23
2 22 31
2 37 42
2 35 40
2 5 37
2 20 40
2 1 45
2 11 32
2 6 10
2 10 20
2 34 44
2 10 40
2 18 44
2 37 42
2 19 29
2 13 41
2 30 44
2 13 21
2 2 30
2 5 34
2 25 38
2 23 33
2 25 34
------- test 7 ----
150 150
13 14 24 52 72 75 89 90 92 108 121 128 131 142
13 10 18 29 35 36 41 60 68 83 102 107 137 140
13 22 31 45 83 91 94 96 98 106 113 114 117 119
12 2 22 34 46 66 69 80 89 108 116 128 130
13 3 8 10 46 59 67 70 75 90 106 120 137 148
13 3 7 31 36 40 42 51 62 85 88 90 101 120
13 9 25 27 28 40 48 84 97 100 101 109 116 131
12 2 8 20 34 52 64 69 94 109 118 137 147
13 20 50 65 92 97 111 116 117 119 120 126 139 146
12 37 46 54 55 80 103 113 121 140 144 146 148
13 17 40 51 54 67 82 86 92 93 107 117 148 150
11 4 33 46 47 117 119 132 142 143 149 150
12 35 47 55 71 82 90 112 120 121 122 125 139
13 10 13 18 28 44 49 56 58 60 87 122 129 140
13 5 24 31 46 51 55 65 75 92 100 131 133 145
12 34 39 51 78 81 88 98 110 114 122 134 138
12 13 18 39 45 68 76 92 94 95 107 113 124
13 21 22 35 37 41 43 49 91 93 109 132 137 149
12 5 8 49 75 76 88 102 105 113 119 126 142
12 6 23 32 65 67 80 98 101 114 121 125 142
12 11 21 42 53 61 69 79 86 90 114 115 123
13 12 14 24 28 50 51 55 83 87 92 114 115 118
13 3 4 13 31 59 83 85 96 101 103 128 144 149
12 41 51 59 65 90 100 108 111 113 122 133 141
13 13 16 18 50 54 64 88 98 102 115 119 123 124
13 22 39 43 44 48 89 93 100 104 107 121 132 137
13 4 12 35 52 53 80 90 109 120 131 132 141 147
13 23 37 60 61 72 85 94 103 116 119 137 144 145
13 19 21 35 37 53 73 84 91 111 116 119 125 148
11 5 9 27 31 59 101 118 125 135 140 149
13 10 12 31 56 62 69 70 71 88 89 105 128 141
13 3 29 53 57 64 82 84 88 96 112 114 115 149
11 21 32 38 63 73 75 103 120 125 131 138
13 11 15 20 25 45 78 82 94 109 125 132 133 134
13 14 21 44 70 82 90 108 111 128 134 141 143 145
12 14 45 83 87 90 93 95 103 116 125 134 139
13 10 27 35 44 69 77 78 80 87 93 95 109 137
12 30 34 39 41 48 54 73 74 79 129 131 146
13 6 17 20 33 43 79 83 88 96 110 113 122 137
13 22 25 36 46 59 70 84 93 95 98 119 123 143
13 6 10 13 39 56 67 75 78 81 115 123 127 137
12 9 13 23 25 30 45 66 94 103 133 140 149
13 13 35 45 67 72 83 90 107 117 121 125 145 150
13 5 30 70 80 83 90 92 101 112 114 126 132 137
13 9 21 37 38 43 65 68 70 81 88 98 110 136
13 10 13 32 57 58 90 93 94 95 108 109 113 148
12 5 8 18 39 43 45 53 85 88 108 126 134
13 1 38 42 59 70 81 94 121 122 124 131 135 147
13 2 5 41 65 76 90 91 95 102 119 121 138 148
12 11 27 32 42 60 79 82 108 112 126 136 138
11 8 35 52 63 83 94 96 99 101 132 150
13 15 45 57 58 73 84 89 98 99 100 128 129 133
11 6 65 69 78 88 111 122 126 130 132 150
12 15 24 42 50 56 63 94 99 114 116 124 149
11 4 20 48 63 86 87 88 97 111 143 149
13 20 21 38 41 67 74 77 98 100 107 121 132 136
13 15 27 41 46 63 75 78 82 104 117 119 126 143
13 8 36 53 55 68 81 83 97 103 107 133 138 140
13 1 16 18 24 30 32 43 88 106 108 110 136 144
13 5 38 48 51 58 79 89 97 103 120 125 137 143
13 15 19 25 30 44 45 60 66 83 90 92 102 137
12 39 46 57 61 103 105 109 119 122 128 135 140
13 10 14 33 38 54 68 82 99 101 106 126 135 139
13 1 16 35 59 69 83 105 115 117 121 128 136 139
13 17 21 25 26 27 29 32 34 58 62 79 94 122
13 11 20 35 49 50 83 94 109 123 125 131 139 150
12 24 26 33 43 69 96 102 118 124 127 147 148
12 13 19 31 37 43 54 71 83 86 102 131 142
13 15 18 35 41 61 65 67 84 91 95 98 118 139
12 21 33 51 57 61 70 87 93 103 106 107 147
13 1 28 31 32 33 50 72 87 97 99 117 118 130
13 9 11 13 34 42 61 63 67 69 74 75 111 126
13 1 18 45 48 79 88 93 100 104 114 120 137 146
12 11 12 20 23 24 64 72 85 87 89 99 120
12 21 35 64 83 87 107 114 119 126 135 138 143
13 2 7 13 19 21 64 65 89 90 102 111 140 147
13 3 11 24 25 28 33 35 48 49 70 82 122 143
13 7 12 55 58 62 65 95 105 110 115 119 120 141
13 4 7 16 21 23 28 40 43 48 75 83 133 137
12 32 35 36 55 68 71 73 76 82 116 127 144
12 28 30 33 36 48 63 66 96 111 113 133 140
11 2 49 70 79 101 102 129 135 137 138 145
11 24 34 35 52 57 62 75 110 134 147 149
12 5 23 53 57 66 72 92 117 137 141 142 147
13 4 31 34 55 58 77 81 82 85 89 116 133 140
12 46 52 55 59 74 92 109 121 134 138 142 145
12 4 23 26 39 59 66 77 84 108 120 136 147
12 4 26 39 40 46 72 82 100 123 130 131 144
13 1 17 26 41 64 79 86 94 103 106 112 120 146
12 11 14 70 73 92 94 106 109 113 132 144 145
12 1 6 8 12 19 36 52 78 94 95 112 117
13 2 10 19 30 45 56 75 81 83 102 125 135 149
13 1 13 45 46 49 52 63 83 85 92 115 140 144
12 21 42 55 57 72 84 90 91 96 121 147 148
11 17 41 54 55 65 93 99 105 114 140 143
12 3 26 27 28 32 39 69 87 104 111 113 117
13 22 34 47 57 73 83 84 85 88 102 137 138 143
12 4 15 20 53 80 83 86 92 105 114 126 132
13 1 13 34 46 71 75 83 84 102 116 131 132 145
12 5 23 37 45 55 58 70 76 82 90 125 142
12 27 52 57 72 77 93 97 98 123 131 134 136
12 4 19 39 48 49 50 58 70 85 93 108 132
12 8 21 24 40 48 81 97 98 100 131 145 148
13 21 22 39 52 54 71 72 78 102 116 120 126 132
13 11 39 51 56 58 60 63 67 96 106 117 129 147
12 9 13 14 25 47 56 115 126 134 136 145 147
12 1 14 57 69 77 78 91 92 109 112 135 147
12 45 59 64 72 81 87 92 103 105 128 133 137
12 20 55 56 58 69 70 71 83 111 117 120 144
11 10 16 29 43 65 66 83 88 96 108 147
11 19 43 45 52 67 83 106 111 116 133 145
13 18 22 24 30 38 46 57 69 73 78 83 126 136
13 2 19 22 59 63 64 75 84 92 106 126 134 136
13 16 30 34 38 53 54 75 82 130 132 134 145 148
12 4 19 44 84 91 95 110 113 115 116 130 131
11 9 34 49 58 64 74 76 83 103 121 145
13 14 17 30 51 53 64 73 90 93 107 110 117 143
13 6 8 29 33 40 50 77 103 108 111 124 130 150
13 4 11 21 23 31 42 80 85 91 114 121 124 141
13 6 35 43 51 58 63 76 84 104 108 127 144 150
13 9 10 14 46 62 70 81 94 102 107 111 135 149
12 5 22 31 54 55 69 76 87 98 99 129 134
13 5 13 15 24 33 50 95 103 106 120 121 147 149
13 10 21 25 26 31 38 46 80 83 99 106 111 142
13 2 14 25 28 47 59 76 78 81 111 114 125 133
13 3 5 25 32 42 72 73 77 97 108 134 139 145
13 15 16 24 30 39 40 64 94 105 110 112 119 137
13 12 30 37 44 49 68 86 114 115 126 129 138 145
12 13 28 36 60 83 84 89 96 110 123 133 146
11 10 15 26 55 59 66 71 74 83 107 110
13 7 39 46 62 63 66 74 76 81 90 102 118 134
13 8 38 48 52 75 79 81 112 113 123 134 148 149
13 41 48 56 62 72 77 96 106 118 123 128 140 145
11 2 15 22 54 60 81 100 117 118 119 134
13 14 20 30 36 47 51 69 99 102 118 132 137 146
13 5 7 14 28 32 48 69 74 95 101 131 132 139
12 5 50 72 84 85 86 104 106 119 135 136 149
13 1 16 17 23 36 41 71 84 117 118 136 137 148
13 6 10 12 48 64 85 99 112 125 129 130 141 146
12 5 33 36 80 106 116 130 132 134 139 147 150
13 9 35 41 50 52 75 101 121 123 127 132 133 148
12 16 41 48 60 67 72 88 100 110 138 142 145
12 4 21 30 37 85 87 92 96 105 133 136 150
12 28 39 56 61 91 102 111 123 131 132 141 146
12 8 20 42 53 62 68 71 77 99 101 127 138
13 3 8 19 20 30 35 37 38 63 119 131 134 142
12 32 67 70 93 102 105 111 120 129 130 137 149
13 29 31 41 44 49 57 73 75 99 107 110 117 144
13 15 32 33 40 51 52 53 72 74 114 119 141 144
13 10 14 42 48 49 85 89 93 103 105 117 119 144
------- test 8 ----
200 200
3 54 150 154
3 52 126 175
3 22 145 176
3 87 94 160
3 18 20 113
3 15 39 52
3 77 102 179
3 68 77 189
3 138 153 176
3 66 97 137
3 50 119 144
2 94 102
3 19 47 116
3 75 133 195
3 88 95 151
3 1 3 133
3 15 35 79
3 112 147 193
3 64 84 181
3 21 157 160
3 10 23 165
3 58 111 141
3 35 77 157
3 72 90 150
3 25 40 159
3 42 119 160
3 52 121 174
3 67 86 167
3 148 151 198
3 61 105 172
3 21 128 136
3 30 69 194
3 70 103 141
3 53 98 141
3 77 100 188
3 27 60 196
3 33 47 69
3 133 190 200
3 56 130 148
3 7 53 191
3 11 178 180
3 41 48 114
3 107 150 182
3 3 79 176
3 66 79 117
3 16 75 93
3 75 121 162
3 54 108 152
3 7 108 183
3 14 56 173
3 108 184 192
3 25 87 105
3 7 11 134
3 84 85 187
3 86 103 151
3 44 119 165
3 6 39 194
3 102 157 160
3 10 13 164
3 65 177 195
3 168 169 172
3 59 73 152
3 84 177 192
3 70 76 183
3 68 161 173
3 19 92 126
3 62 85 164
3 68 123 187
3 24 135 196
3 61 130 188
3 32 98 165
3 50 90 133
3 6 26 82
3 8 89 158
3 76 119 158
3 44 94 131
3 7 22 156
3 23 106 130
3 47 65 93
3 34 88 194
3 92 149 199
3 131 141 180
3 70 136 166
3 24 152 174
3 49 109 182
3 27 113 142
3 70 98 134
3 40 77 120
3 6 132 167
3 1 20 70
3 64 168 199
3 129 148 156
3 18 65 96
3 62 89 169
3 36 71 78
3 85 105 183
3 27 116 175
3 51 124 155
3 43 57 87
3 10 107 127
3 10 74 190
3 8 21 146
3 39 41 137
3 1 7 103
3 85 89 139
3 23 160 189
3 49 142 163
3 14 57 172
3 12 15 71
3 24 99 197
3 5 33 187
3 41 78 132
3 99 173 177
3 75 137 177
3 13 66 144
3 25 28 35
3 17 84 166
3 23 55 180
3 35 70 193
3 63 94 133
3 60 127 137
3 15 46 167
3 113 143 177
3 50 120 149
3 24 185 193
3 10 21 37
3 37 72 175
3 17 155 198
2 10 32
3 73 79 165
3 101 132 172
3 98 115 177
3 28 65 153
3 7 77 102
3 70 125 126
3 90 111 161
3 32 120 127
3 95 144 187
3 93 153 196
3 25 75 124
3 47 89 156
3 132 145 189
3 9 85 104
3 15 131 187
3 8 112 141
3 51 73 77
3 105 167 171
3 65 91 94
3 37 86 157
3 81 161 190
3 7 14 169
3 151 158 169
3 61 101 159
3 174 186 191
3 114 173 199
3 75 84 165
3 42 136 156
3 60 135 200
3 151 157 172
3 37 38 161
3 7 174 197
3 3 143 164
3 25 44 153
3 16 30 112
3 2 14 85
3 85 88 199
3 41 129 164
3 64 99 101
3 35 51 99
3 56 88 196
3 84 94 170
3 86 100 112
3 39 63 156
3 87 151 185
3 35 102 186
3 34 71 116
3 3 112 198
3 12 97 132
2 63 196
3 31 51 150
3 26 33 144
3 44 119 195
2 107 158
3 62 108 193
3 47 95 143
3 10 32 177
3 13 103 174
3 14 71 145
3 25 66 140
3 88 117 170
3 37 61 196
3 70 104 191
3 10 98 189
3 3 147 160
3 6 54 98
3 37 108 197
3 120 140 173
3 65 147 153
3 5 18 178
3 65 83 175
------- test 9 ----
200 200
6 51 81 152 166 174 194
5 6 21 66 161 170
6 36 52 104 150 157 198
6 16 35 102 122 153 154
6 84 105 117 128 145 147
6 32 43 77 149 182 197
6 6 11 69 109 119 139
6 18 32 136 171 175 181
6 29 125 127 136 152 160
6 1 73 78 106 133 190
6 60 67 92 110 114 117
6 18 62 87 97 108 180
6 54 80 88 105 119 120
5 6 25 35 55 150
5 14 45 79 109 168
5 4 70 104 109 195
6 92 150 170 179 197 199
6 5 69 83 86 123 188
6 59 65 67 73 96 147
6 5 19 21 74 107 143
6 16 22 23 91 119 124
6 18 44 66 70 94 109
6 34 108 112 135 148 193
6 2 56 74 77 181 198
6 55 63 81 99 121 181
6 11 83 99 121 173 195
6 13 22 80 116 121 145
6 21 28 29 71 93 159
6 18 29 74 84 103 104
6 41 57 83 137 161 194
6 38 60 105 110 139 140
6 38 59 71 117 150 175
6 4 66 87 95 134 187
6 15 44 105 108 179 192
5 29 146 152 173 193
6 5 75 132 166 168 191
6 11 38 61 64 96 180
6 93 106 134 171 175 199
6 73 82 86 107 150 190
6 16 24 96 125 140 168
6 90 135 138 148 165 168
6 3 10 39 140 144 199
6 7 12 41 115 171 173
6 46 56 63 67 113 186
6 13 83 140 152 159 164
6 55 120 126 136 172 179
6 63 64 80 119 194 197
6 37 48 62 72 91 187
6 34 101 106 118 163 193
5 3 40 127 169 175
6 9 47 101 108 181 182
6 34 91 95 117 171 196
6 5 92 105 114 127 175
6 8 66 84 109 183 190
6 85 120 145 148 151 158
6 39 46 73 92 93 132
6 10 43 87 185 190 193
6 39 99 103 104 148 178
6 79 87 112 123 151 169
6 15 70 96 143 154 195
6 25 47 61 93 120 153
6 32 63 72 93 109 145
6 9 62 94 113 115 192
6 13 23 62 78 101 192
6 4 15 73 108 122 135
6 4 108 132 134 158 182
6 31 66 79 110 123 194
6 31 42 115 119 124 180
6 9 22 71 100 142 165
6 83 99 103 172 187 191
5 26 60 63 94 112
6 17 20 28 86 106 186
6 16 56 65 107 134 141
6 13 49 64 135 165 186
6 7 13 17 57 85 111
6 13 43 73 119 135 137
6 40 121 138 146 162 182
6 67 78 95 131 133 162
6 38 45 59 86 131 197
6 9 98 129 148 155 185
6 22 28 73 86 94 164
6 29 71 107 125 126 149
6 32 86 104 126 164 173
6 27 29 93 97 141 185
6 24 125 133 143 158 171
6 47 126 134 154 170 199
6 8 24 59 75 84 165
5 41 73 78 110 138
6 8 20 35 62 169 182
6 7 49 56 65 85 132
6 18 65 119 149 179 181
6 52 62 70 111 140 163
6 13 57 73 76 145 148
6 35 53 92 111 114 175
6 42 60 115 160 166 174
6 33 38 56 74 96 115
6 6 59 84 120 136 194
6 9 22 69 82 94 153
6 12 39 101 135 153 169
6 11 127 137 171 184 187
6 22 51 77 83 102 197
6 7 56 71 160 166 197
6 12 29 78 110 164 172
6 10 13 44 73 162 173
6 7 23 55 75 84 89
6 29 41 105 173 177 191
6 44 50 89 102 123 157
6 5 25 34 49 61 77
6 15 31 70 177 187 197
6 8 44 65 66 140 153
6 38 73 89 101 116 198
6 6 49 108 132 160 182
6 43 64 67 97 98 174
6 64 103 118 134 161 191
5 34 87 94 100 159
6 15 74 91 99 128 173
6 35 80 88 103 136 187
6 6 17 32 51 59 148
6 51 126 156 166 169 190
6 9 21 63 90 123 190
6 63 102 119 133 136 193
6 1 8 15 36 71 121
6 51 87 144 145 176 199
6 18 50 60 70 146 181
6 80 92 101 102 182 191
6 20 44 85 93 153 182
6 5 13 59 179 188 194
6 45 89 131 145 156 194
6 18 44 57 93 111 159
6 49 111 158 190 191 200
6 30 74 83 91 111 167
6 46 51 52 63 172 185
6 40 53 71 84 109 140
6 20 37 100 128 142 181
5 44 118 121 131 195
6 12 74 107 122 147 190
6 34 44 128 157 184 199
6 52 83 113 143 167 195
6 36 94 103 114 123 136
6 44 71 135 140 154 164
5 51 97 167 176 178
6 51 80 114 123 196 198
6 15 39 51 57 122 163
6 23 40 88 137 182 187
6 47 95 114 138 176 180
6 24 77 92 102 143 191
6 54 114 135 140 164 174
6 24 95 127 142 168 174
6 61 75 78 118 163 182
6 11 58 60 84 97 195
6 45 97 102 106 130 174
6 33 118 120 147 184 200
6 91 124 168 185 191 197
5 65 126 130 143 167
6 9 61 68 157 182 187
6 52 70 79 103 168 174
5 23 56 97 114 199
6 15 52 106 156 166 176
6 21 41 57 90 146 183
6 23 43 155 173 187 200
6 33 37 98 155 168 196
6 48 83 85 120 151 175
6 3 27 47 62 81 167
6 2 23 26 43 57 114
6 68 69 73 100 123 168
6 27 36 60 72 140 145
6 23 26 38 70 144 157
5 98 107 132 153 159
6 4 68 154 155 161 176
6 29 40 66 97 144 168
6 11 67 126 150 165 200
5 69 72 94 144 187
6 34 76 94 152 163 200
6 82 106 147 192 195 198
6 14 26 27 92 123 182
4 21 51 87 102
6 13 38 51 81 158 181
6 14 56 90 107 174 175
6 32 45 82 85 99 126
6 31 40 59 109 113 139
6 4 30 60 118 132 147
6 11 20 40 159 161 182
6 14 24 56 131 188 200
5 29 30 74 114 145
6 19 58 111 132 171 197
6 26 31 50 157 168 178
6 132 137 139 158 171 176
6 14 143 158 166 177 190
6 35 90 97 126 159 188
6 89 93 99 118 131 199
6 71 101 115 132 134 167
6 10 36 45 105 109 168
6 10 21 125 139 144 178
6 40 76 84 97 166 186
6 3 95 99 111 165 182
6 6 66 92 128 196 199
6 36 77 81 86 104 139
6 53 60 102 111 116 178
6 12 65 97 100 116 173
6 30 77 83 86 96 125

Keep up the good work!
Thanks for your submission!

时间: 2024-10-13 02:14:49

usaco-4.1-stall4-passed的相关文章

[USACO 4.2] 完美的牛栏

★★☆   输入文件:stall4.in   输出文件:stall4.out   简单对比 时间限制:1 s   内存限制:128 MB USACO/stall4(译by Felicia Crazy) 描述 农夫约翰上个星期刚刚建好了他的新牛棚,他使用了最新的挤奶技术.不幸的是,由于工程问题,每个牛栏都不一样.第一个星期,农夫约翰随便地让奶牛们进入牛栏,但是问题很快地显露出来:每头奶牛都只愿意在她们喜欢的那些牛栏中产奶.上个星期,农夫约翰刚刚收集到了奶牛们的爱好的信息(每头奶牛喜欢在哪些牛栏产奶

匈牙利算法 cogs 886. [USACO 4.2] 完美的牛栏

886. [USACO 4.2] 完美的牛栏 ★★☆   输入文件:stall4.in   输出文件:stall4.out   简单对比时间限制:1 s   内存限制:128 MB USACO/stall4(译by Felicia Crazy) 描述 农夫约翰上个星期刚刚建好了他的新牛棚,他使用了最新的挤奶技术.不幸的是,由于工程问题,每个牛栏都不一样.第一个星期,农夫约翰随便地让奶牛们进入牛栏,但是问题很快地显露出来:每头奶牛都只愿意在她们喜欢的那些牛栏中产奶.上个星期,农夫约翰刚刚收集到了奶

COGS 696. [IOI1996][USACO 2.3] 最长前缀

★   输入文件:prefix.in   输出文件:prefix.out   简单对比时间限制:1 s   内存限制:128 MB 描述 USACO 2.3.1 IOI96 在生物学中,一些生物的结构是用包含其要素的大写字母序列来表示的.生物学家对于把长的序列分解成较短的序列(即元素)很感兴趣. 如果一个集合 P 中的元素可以通过串联(元素可以重复使用,相当于 Pascal 中的 “+” 运算符)组成一个序列 S ,那么我们认为序列 S 可以分解为 P 中的元素.元素不一定要全部出现(如下例中B

USACO prefix TrieTree + DP

/* ID:kevin_s1 PROG:prefix LANG:C++ */ #include <iostream> #include <cstdio> #include <string> #include <cstring> #include <vector> #include <map> #include <set> #include <algorithm> #include <cstdlib>

【USACO 1.3.4】牛式

[題目描述 ] 下面是一个乘法竖式,如果用我们给定的那n个数字来取代*,可以使式子成立的话,我们就叫这个式子牛式. * * * x * * ---------- * * * * * * ---------- * * * * 数字只能取代*,当然第一位不能为0,况且给定的数字里不包括0. 注意一下在美国的学校中教的"部分乘积",第一部分乘积是第二个数的个位和第一个数的积,第二部分乘积是第二个数的十位和第一个数的乘积. 写一个程序找出所有的牛式. [格式] INPUT FORMAT: (f

USACO Chapter 1 Section 1.1

USACO的题解和翻译已经很多了... 我只是把自己刷的代码保存一下. 1.PROB Your Ride Is Here 1 /* 2 ID:xiekeyi1 3 PROG:ride 4 LANG:C++ 5 */ 6 7 #include<bits/stdc++.h> 8 using namespace std ; 9 10 int main() 11 { 12 freopen("ride.in","r",stdin); 13 freopen(&quo

USACO Your Ride Is Here

[USACO]Your Ride Is Here It is a well-known fact that behind every good comet is a UFO. These UFOs often come to collect loyal supporters from here on Earth. Unfortunately, they only have room to pick up one group of followers on each trip. They do,

usaco月赛,2017.1总结

T1:跳舞的奶牛 大致题意:一个体积为k的舞台能够同时容纳k只奶牛一起跳舞,他们每头奶牛的跳舞时间不同,如果有一只奶牛跳完了第k+1头奶牛就会立刻上场跳舞,当所有奶牛跳完舞以后我们认为这次表演结束.现在给出奶牛个数,最多用时,每头奶牛的跳舞时间.求舞台最小为多大. 思路:本来写了个程序以为这道题很简单,刚开始排一下序然后就行了,结果交了以后发现只过了五组,然后才发现这道题不能改变顺序(所以说为什么我改变顺序了还是能过五组,usaco的数据也好水......),所以说我想到了堆,然后就用堆写了一下

插入排序的优化【不靠谱地讲可以优化到O(nlogn)】 USACO 丑数

首先我们先介绍一下普通的插排,就是我们现在一般写的那种,效率是O(n^2)的. 普通的插排基于的思想就是找位置,然后插入进去,其他在它后面的元素全部后移,下面是普通插排的代码: 1 #include<iostream> 2 #include<fstream> 3 #include<stdio.h> 4 using namespace std; 5 int a[200000]; 6 int p[200000]; 7 8 int main(){ 9 ios::sync_wi

JPA:detached entity passed to persist

Caused by: org.hibernate.PersistentObjectException: detached entity passed to persist: com.example.entity.UserInfo at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:124) at org.hibernate.event.inte