この問題は面白いです!これは私がそれを解決する方法を次のとおりです。
rem Count the number of times each number appear in array B
for each line in %2 do (
for each number %%n in line do (
add 1 to times[%%n]
)
)
rem Process the matrix A
for each line in %1 do (
rem Initialize output line
set "out="
for each number %%n in line do (
set termC = %%n + times[%%n]
join termC to out
)
echo out
)
EDIT:ユーザーaschipflが示されているように、この答えはポストの完全なので、私はあなたのためのヒント(として投稿この問題を解決する方法のほんの擬似コードでありますOPが問題を解決するための自分の努力を示していないときの解決策はここでは良い練習ではありません)。
しかし、今、別の作業溶液が投稿されていたことを、私は完全に動作するプログラムに、以前の擬似コードを完了:
@echo off
setlocal EnableDelayedExpansion
rem Check the arguments
if "%~2" equ "" echo Usage: %~NX0 MatrixA.txt ArrayB.txt & goto :EOF
if not exist "%~1" echo MatrixA file not found & goto :EOF
if not exist "%~2" echo ArrayB file not found & goto :EOF
rem Count the number of times each number appear in array B
for /F "usebackq delims=" %%b in ("%~2") do (
for %%n in (%%b) do (
set /A "times[%%n]+=1"
)
)
rem Process the matrix A and create matrix C
(for /F "usebackq delims=" %%a in ("%~1") do (
set "out="
for %%n in (%%a) do (
set /A termC=%%n + times[%%n]
set "out=!out! !termC!"
)
echo !out:~1!
)) > result.txt
質問が似ている「私のためにこれを書く。ここは私の要件です。」ここでうまく受信されていません。いくつかのヒントについて[質問する](http://stackoverflow.com/help/how-to-ask)を参照し、下降声の洪水が始まる前に質問をすばやく修正または削除してください。 – rojo