Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //На двумерном массиве без ассемблерных вставок
- int main()
- {
- const int H = 5; const int W = 7; const int h = 3;
- int mas[H][W] = {
- {0, 1, 0, 0, 0, 0, 1},
- {0, 0, 0, 1, 0, 1, 1},
- {0, 1, 0, 1, 0, 1, 1},
- {0, 1, 0, 1, 0, 0, 0},
- {0, 1, 0, 0, 0, 0, 0}
- };
- bool checkl=false; int countr = 0; int k; int gcountr = 0;
- for (int j = 0; j < W; j++) {
- for (int i = 0; i < H; ) {
- if ((i != 0) && (mas[i - 1][j] == 0)) {
- while(mas[i][j]==1){
- if (mas[i][j + 1] == 0 && mas[i][j - 1] == 0) {
- countr++;
- if (countr > h) {
- checkl = false; countr = 0; break;
- }
- else {
- checkl = true;
- }
- }
- i++;
- }
- if (checkl == true) {
- if (i-1 == H - 1) {
- checkl = false;
- countr = 0;
- break;
- }
- else {
- gcountr++;
- countr = 0;
- checkl = false;
- }
- }
- }
- i++;
- }
- }
- cout << gcountr;
- }
- // На одномерном массиве без ассемблерных вставок
- int main()
- {
- const int H = 5; const int W = 7; const int h = 3;
- int mas[] = {0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1,0, 1, 0, 1, 0, 1, 1,0, 1, 0, 1, 0, 0, 0,0, 1, 0, 0, 0, 0, 0};
- bool checkl=false; int countr = 0; int k; int gcountr = 0;
- for (int j = 0; j < W; j++) {
- for (int i = 0; i < H; ) {
- if ((i != 0) && (mas[(i - 1)*W+j] == 0)) {
- while(mas[i*W+j]==1){
- if (mas[i*W+(j + 1)] == 0 && mas[i*W+(j - 1)] == 0) {
- countr++;
- if (countr > h) {
- checkl = false; countr = 0; break;
- }
- else {
- checkl = true;
- }
- }
- i++;
- }
- if (checkl == true) {
- if (i-1 == H - 1) {
- checkl = false;
- countr = 0;
- break;
- }
- else {
- gcountr++;
- countr = 0;
- checkl = false;
- }
- }
- }
- i++;
- }
- }
- cout << gcountr;
- }
Add Comment
Please, Sign In to add comment