Ngày 1 ấp 1 trứng, ngày 2 ấp 2 trứng (1 trứng đã có từ ngày hôm trước), cho nên mỗi ngày chỉ ấp được một trứng. Câu trả lời cuối cùng là ngày 3 ấp được 1 trứng (câu b).
P/s sao không ai trả lời câu 1 với câu 2 đi =))
Ngày 1 ấp 1 trứng, ngày 2 ấp 2 trứng (1 trứng đã có từ ngày hôm trước), cho nên mỗi ngày chỉ ấp được một trứng. Câu trả lời cuối cùng là ngày 3 ấp được 1 trứng (câu b).
P/s sao không ai trả lời câu 1 với câu 2 đi =))
Câu 2 chắc check if(someOtherShit >14 || someOtherShit < 0) return 0; bỏ cái default đi :v
Câu 1 viết bình thường
Câu 2 chuyển qua dùng enum để dễ optimust và maintain
Câu 3. how many egg will this peacock lays IN day 3. -> 1 quả
Câu 2:
char *someshit(int someOtherShit)
{
return "You gave me ur shit. Here is my SHIT!";
}
Peacock là con công đực, còn peahen mới là con công cái nên chắc ghi vào đáp án là đề sai quá =))
câu 3 :là đáp án a = 0 nhé => vì peacock là con công đực , peahen mới là con công cái => công đực làm méo j đẻ trứng
Câu 2 mình ko biết trong C++ có break ko mà sao ko thấy sau mỗi cái case có 1 cái break nhỉ ?
Có return nó kết thúc hàm rồi bác
Câu 1: dùng thuật toán backtrack tính ra các permutation. (khá đơn giản với những ai biết backtrack)
Cây 2: khai báo 1 array là input[15] chứa các giá trị random kí tự.
char *someshit(int someOtherShit){
return *(input + someotherShit);
}
Câu 3: câu này viết sai chính tả nhiều quá. thôi cứ cho là bạn này viết sai vậy. câu này mình nghĩ chọn đáp án nào cũng được, không hề có quy luật nào ở đây cả.
Bài 1 dùng next_permutation là ra. @@
break để gặp case là nó đi ra luôn, không cần phải kiểm tra case khác nữa.
tui nghĩ câu 3 là 0 vì nó để là con đó có thể đẻ chứ đâu có đẻ ra trứng !
Câu 1 dùng vét cạn hoặc thuật toán sinh hoán vị ( mình dùng vét cạn)
#include<iostream>
#include <stdio.h>
#include <conio.h>
#include <string>
using namespace std;
int lenght;
char xau[1000];
char c_xau[1000];
bool trangthai[1000];
void InHoanVi()
{
for (int i = 0; i < lenght; i++)
{
cout << c_xau[i];
}
cout << endl;
}
bool KiemTra(char kt,int vt)
{
for (int i = 0; i < vt;i++)
{
if (kt == c_xau[i])
{
return false;
}
}
return true;
}
void DeQuyHoanVi(int j)
{
for (int i = 0; i < lenght;i++)
{
if (j < lenght && KiemTra(xau[i],j))
{
c_xau[j] = xau[i];
if (j == lenght - 1)
{
InHoanVi();
}
DeQuyHoanVi(j + 1);
}
}
}
void main()
{
for (int i = 0; i < 1000;i++)
{
trangthai[i] = true;
}
cout << "Moi ban nhap vao xau ki tu : ";
gets_s(xau);
lenght = strlen(xau);
DeQuyHoanVi(0);
gets_s(xau);
}
câu 2 bác làm không đúng
Bài 2 :
#include <iostream>
using namespace std;
char xau[][14]{"ES", "Hi", "Blalba", "Xin", "Chao", "Cac", "Ban", "Toi", "La", "Son", "He", "He", """" };
char *someshit(int someOtherShit)
{
return xau[someOtherShit];
}
void main()
{
someshit(0);
}
sizeof(stringInput)*giaithua(sizeof(stringInput));
Vì case không có break nên để giử nguyên ý nghĩa đoạn code mà tăng tốc độ thực thi. Ta giữ nguyên đoạn code
viết method tạo 1 ma trận xoắn ốc …
câu 1 các bạn làm căng vl
next_permutation là ra
Thêm 1 câu nữa nè
1
1 1
2 1
1 2 1 1
1 1 1 2 2 1
?
Tìm các số hàng cuối ( Đề chỉ như thế ko cho biết gì thêm )