

Vũ NgỌc DuY HoÀnG
Giới thiệu về bản thân
chào mừng đến với trang cá nhân của Hoàng





0





0





0





0





0





0





0
2025-07-09 20:43:09
hay đấy
2025-07-09 20:41:54
dối vãi
2025-07-09 20:40:43
tập gym đi ko chia tay
2025-07-09 20:39:17
20
2025-07-09 20:35:16
x−1∈Ư(3x)⇔1−x1∈Ư(3)={±1;±3}
2025-07-09 20:33:57
a)\(\frac{x^{2} + x + 1}{x - 1} = \frac{x^{2} - 2 x + 1}{x - 1} + \frac{3 x}{x - 1} = \left(\right. x - 1 \left.\right) + \frac{3 x}{x - 1}\)
Để \(x^{2} + x + 1 x - 1\) thì \(\frac{3 x}{x - 1}\) nguyên.Tức là
2025-07-08 22:50:30
Chương trình đọc một bảng kích thước \(N \times M\) từ file BAI3.INP, tìm số lớn nhất trên mỗi hàng và vị trí của nó, sau đó ghi kết quả ra file BAI3.OUT. Nếu dữ liệu đầu vào không hợp lệ (N hoặc M không nằm trong khoảng (1, 100]), chương trình sẽ ghi -1 ra file output. Python
def solve():
try:
with open("BAI3.INP", "r") as f_in:
line = f_in.readline().strip().split()
n = int(line[0])
m = int(line[1])
if not (1 < n <= 100 and 1 < m <= 100):
with open("BAI3.OUT", "w") as f_out:
f_out.write("-1")
return
matrix = []
for _ in range(n):
row = list(map(int, f_in.readline().strip().split()))
matrix.append(row)
with open("BAI3.OUT", "w") as f_out:
for i in range(n):
max_val = float('-inf')
positions = []
for j in range(m):
if matrix[i][j] > max_val:
max_val = matrix[i][j]
positions = [i * m + j + 1]
elif matrix[i][j] == max_val:
positions.append(i * m + j + 1)
f_out.write(f"{max_val} {' '.join(map(str, positions))}\n")
except FileNotFoundError:
with open("BAI3.OUT", "w") as f_out:
f_out.write("-1")
except ValueError:
with open("BAI3.OUT", "w") as f_out:
f_out.write("-1")
solve()
Giải thích: - 1. Đọc và kiểm tra dữ liệu đầu vào:
- Đọc \(N\) và \(M\) từ dòng đầu tiên của file BAI3.INP.
- Kiểm tra điều kiện \(1 < N, M \le 100\). Nếu không thỏa mãn, ghi -1 ra file BAI3.OUT và kết thúc.
- Đọc ma trận từ các dòng tiếp theo của file.
- 2. Xử lý từng hàng:
- Lặp qua từng hàng của ma trận (từ 0 đến \(N-1\)).
- Trong mỗi hàng:
- Khởi tạo
max_val
là giá trị nhỏ nhất có thể (- vô cùng) và một danh sách rỗngpositions
. - Lặp qua các phần tử trong hàng (từ 0 đến \(M-1\)):
- Nếu giá trị hiện tại lớn hơn
max_val
: - Cập nhật max_val với giá trị hiện tại.
- Xóa danh sách positions và thêm vị trí hiện tại vào.
- Nếu giá trị hiện tại bằng
max_val
: - Thêm vị trí hiện tại vào danh sách positions.
- Nếu giá trị hiện tại lớn hơn
- Ghi kết quả:
- Ghi
max_val
và các vị trí trongpositions
ra file BAI3.OUT, cách nhau bởi dấu cách.
- Ghi
- Khởi tạo
- 3. Xử lý lỗi:
- Nếu không tìm thấy file, hoặc dữ liệu không hợp lệ (không phải số nguyên), chương trình sẽ ghi -1 ra file BAI3.OUT.
3 4
1 2 3 4
5 6 7 8
9 10 11 12
File BAI3.OUT sẽ có nội dung: Mã 4 4
8 4
12 4
2025-07-08 22:47:45
Tìm số lớn nhất và tất cả các vị trí tương ứng trên mỗi hàng của một bảng N×Mcap N cross cap M𝑁×𝑀ô vuông đơn vị. Thông tin được cung cấp trong bài toán
- Kích thước bảng là N×Mcap N cross cap M𝑁×𝑀, với 1<N,M≤1001 is less than cap N comma cap M is less than or equal to 1001<𝑁,𝑀≤100.
- Dữ liệu đầu vào từ file
BAI3.INP
: - Dòng đầu tiên chứa Ncap N𝑁và Mcap M𝑀.
- Ncap N𝑁dòng tiếp theo, mỗi dòng chứa Mcap M𝑀số nguyên cách nhau bởi dấu cách.
- Dữ liệu đầu ra ghi vào file
BAI3.OUT
: - Ncap N𝑁dòng, mỗi dòng là số lớn nhất của hàng và các vị trí của nó.
- Nếu dữ liệu đầu vào sai điều kiện, ghi
-1
.
- Vị trí của một ô trong hàng ii𝑖và cột jj𝑗được tính là i×M+j+1i cross cap M plus j plus 1𝑖×𝑀+𝑗+1(nếu hàng và cột bắt đầu từ 000) hoặc (i−1)×M+jopen paren i minus 1 close paren cross cap M plus j(𝑖−1)×𝑀+𝑗(nếu hàng và cột bắt đầu từ 111).
- Để tìm số lớn nhất trong một hàng, cần duyệt qua tất cả các phần tử trong hàng đó.
- Để tìm tất cả các vị trí của số lớn nhất, cần duyệt lại hàng sau khi đã tìm được giá trị lớn nhất.
- Bước 1 . Đọc và kiểm tra dữ liệu đầu vào
- Đọc Ncap N𝑁và Mcap M𝑀từ file
BAI3.INP
. - Kiểm tra nếu 1<N,M≤1001 is less than cap N comma cap M is less than or equal to 1001<𝑁,𝑀≤100.
- Nếu không thỏa mãn, ghi
-1
vàoBAI3.OUT
và kết thúc.
- Đọc Ncap N𝑁và Mcap M𝑀từ file
- Bước 2 . Xử lý từng hàng
- Lặp qua từng hàng từ i=1i equals 1𝑖=1đến Ncap N𝑁.
- Trong mỗi hàng, khởi tạo
max_val
là giá trị nhỏ nhất có thể và một danh sách rỗngpositions
.
- Bước 3 . Tìm giá trị lớn nhất và vị trí
- Duyệt qua các phần tử jj𝑗từ 111đến Mcap M𝑀trong hàng hiện tại.
- Nếu giá trị hiện tại lớn hơn
max_val
, cập nhậtmax_val
và xóapositions
, sau đó thêm vị trí hiện tại vàopositions
. - Nếu giá trị hiện tại bằng
max_val
, thêm vị trí hiện tại vàopositions
. - Vị trí của ô (i,j)open paren i comma j close paren(𝑖,𝑗)là (i−1)×M+jopen paren i minus 1 close paren cross cap M plus j(𝑖−1)×𝑀+𝑗.
- Bước 4 . Ghi kết quả
- Ghi
max_val
và tất cả cácpositions
vào fileBAI3.OUT
, cách nhau bởi dấu cách.
- Ghi
BAI3.OUT
theo định dạng: số lớn nhất của hàng và các vị trí tương ứng, cách nhau bởi dấu cách
2025-07-08 22:30:03
2025-07-08 22:28:05
ko bt dung ko